Crowly Skrevet 26. mai 2009 Rapporter Del Skrevet 26. mai 2009 (endret) Edit2: Tidligere skript fjernet, ikke relevant. Får ett problem med antall dager i mars-2009. Eksempel kode for å illustrere <?php $endDate='2009-03-31'; $startDate='2009-02-28'; echo strtotime($endDate) - strtotime($startDate)."<br />"; //2674800 $xend=explode('-',$endDate); $xstart=explode('-',$startDate); echo mktime(0,0,0,$xend[1],$xend[2],$xend[0]) - mktime(0,0,0,$xstart[1],$xstart[2],$xstart[0])."<br />"; // 2674800 echo 60*60*24*31; // 2678400 ?> en diff på 3600 sekunder (1 time). Noen som vet hvor(for) denne differansen oppstår? Sommertid 29/3? Logisk feil? Tror jeg kan modifisere skriptet til å bruke date("t") i stedet for, da jeg er kun interessert i dager pr hele månder, men hadde vært greit å vite hvorfor, så kan jeg lære litt av skriptene jeg finner Edit: Omforumlert litt, og litt ekstra kode Edit2: Ser ut til at problemet er sommertid, ved å benytte gmmktime i stedet for mktime, så blir det beregnet rett antall sekunder for 31 dager i mars. echo gmmktime(0,0,0,$xend[1],$xend[2],$xend[0]) - gmmktime(0,0,0,$xstart[1],$xstart[2],$xstart[0])."<br />"; // 2674800 Endret 29. mai 2009 av Crowly Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå