| Uutiset | Koodikirjasto | Wiki | Keskustelut | FAQ | Info |
sitten/jäljelläraspi 26.08.01 14:20 laske sitten/jäljellä oleva aika jostakin
(fixed) <?php function aeka ($sekunnit) { $vuodet = floor($sekunnit / 31536000); $sekunnit = $sekunnit % 31536000; $paivat = floor($sekunnit / 86400); $sekunnit = $sekunnit % 86400; $tunnit = floor($sekunnit / 3600); $sekunnit = $sekunnit % 3600; $minuutit = floor($sekunnit / 60); $sekunnit = $sekunnit % 60; $vuositeksti = ($vuodet != 0 ? ($vuodet == 1 ? "$vuodet vuosi, " : "$vuodet vuotta, ") : ""); $paivateksti = ($paivat != 0 ? ($paivat == 1 ? "$paivat päivä, " : "$paivat päivää, ") : ""); $tuntiteksti = ($tunnit != 0 ? ($tunnit == 1 ? "$tunnit tunti, " : "$tunnit tuntia, ") : ""); $minuuttiteksti = ($minuutit != 0 ? ($minuutit == 1 ? "$minuutit minuutti, " : "$minuutit minuuttia, ") : ""); $sekteksti = ($sekunnit != 0 ? ($sekunnit == 1 ? "$sekunnit sekunti" : "$sekunnit sekuntia") : ""); return "$vuositeksti$paivateksti$tuntiteksti$minuuttiteksti$sekteksti"; } $synttari = "11.09.2001 00:00"; // pp.kk.vvvv hh:mm // HUOM: // 1.1.1970 aiemmat päivämäärät eivät kelpaa // >> http://fi.php.net/manual/en/function.time.php $synttari = ereg_replace('([0-9]*)\.([0-9]*)\.([0-9]*)','\2/\1/\3', $synttari); $synttari = strtotime($synttari); $nyt = time(); if ($synttari > $nyt) { $joo = $synttari - $nyt; echo aeka($joo) . " jäljellä"; } if ($nyt > $synttari) { $joo = $nyt - $synttari; echo aeka($joo) . " sitten"; } ?> tämän voi varmaan tehdä myös toisin? amp_god 15:36 6.9.02 Tämä scripti ei ainakaan minulla toimi (mbnet:in palvelimella) :( tulostaa aivan järjettömiä vaikka laittaa minkä tahansa päivän :P esim : pvä=22.07.1938 06:00 Tulostuu "iäksi" : 32 vuotta, 256 päivää, 12 tuntia, 21 minuuttia, 52 sekuntia sitten ---- Eikö jossakin kohtaa oo scriptissä bugia tms... myös toi "vakio" päivämäärä antaa saman tuloksen ((http://koti.mbnet.fi/hjylha/?page=contact)) raspi 07:42 8.9.02 korjattu pikkumyy 16:21 27.9.02 Ilmeisesti et ota karkausvuosia yms huomioon ollenkaan? Parempi olisi ollut käyttää mktime():a sekuntien selvittämiseen. |
![]() Haku
|