Avatar billede testwatest Nybegynder
17. februar 2007 - 12:14 Der er 2 kommentarer og
1 løsning

Tid siden

Kan nedenstående script gøres smartere? Lige nu overskriver den jo bare, efter hver $key den når i mit $time-array. Hvordan kunne jeg finde ud af hvad der passer bedst?

$age = time()-$age;
$time = array(
    'second'    => $age,
    'minute'    => $age/60,
    'hour'        => $age/(60*60),
    'day'        => $age/(60*60*24),
    'week'        => $age/(60*60*24*7),
    'month'        => $age/(60*60*24*30),
    'year'        => $age/(60*60*24*365)
);

foreach( $time as $key => $value )
{
    if( $value >= 1 )
    {
        $age = floor( $value ) . " {$key}" . ( $value >= 2 ? "s" : "" ) . " ago";
    }
}

echo $age;
Avatar billede intenz Novice
17. februar 2007 - 17:18 #1
Forstår ikke hvad det er du vil have ud af det? Hvorfor køre den igennem det antal gange når du overskriver $age hver gang?

"Hvordan kunne jeg finde ud af hvad der passer bedst?" -> Passer bedst til hvad?
Avatar billede testwatest Nybegynder
17. februar 2007 - 21:56 #2
Meningen er jo, at hvis der er tale om mere end 1 år, så skal den vise antal år, hvis der er tale om mere end 1 måned, så skal den vise antal måneder osv. Nu starter jeg jo fra sekunder, og sætter variablen efter sekunder, og bagefter tjekker jeg om der er tale om mere end 1 minut, og derefter overskriver $age med det osv.

Det er jo spild af 'tid', når jeg overskriver hele tiden. Der må da være en genial måde, at ordne det på, så jeg ikke er nødsaget til at overskrive unødvendigt data hver gang i løkken.
Avatar billede testwatest Nybegynder
26. februar 2007 - 23:09 #3
:(
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester