Datohåndtering er noe du alltid vil komme borti når du jobber med webutvikling. Tradisjonelt baserer datohåndteringen i PHP seg på bruk av Unix timestamp eller med andre ord antall sekunder siden 1.januar 1970. For å bøte på disse begrensningene har PEAR lenge hatt en egen implementasjon for datohåndtering med pakken PEAR::Date for å kunne manipulere datoer og konvertere mellom tidssoner. Denne implementasjonen er veldig mye brukt og er svært fleksibel, men den kan også ha sine ytelsesmessige konsekvenser i situasjoner der du må håndtere større mengder datoer samtidig da den blant annet benytter seg av miljøvariable via getenv() og putenv() for å håndtere tidssoneinformasjon. Med versjon 5.2 av PHP er datohåndteringen forbedret med introduksjon av en ny DateTime-klasse.
Her er et kort eksempel på hvordan du kan bruke den nye DateTime-klassen:
<?php
// Vis UTC tid akkurat nå
$now = new DateTime('now', new DateTimeZone('UTC'));
var_dump($now->format(DATE_ATOM));
// Konverter tiden til vår tidssone
$now->setTimezone(new DateTimeZone('Europe/Oslo'));
var_dump($now->format(DATE_ATOM));
?>DateTime::format() bruker det samme formatet som du kjenner fra date()-funksjonen.
For å sjekke om du har støtte for den nye date-extensionen kan du sjekke phpinfo() eller skrive "php -i | grep date" på kommandolinjen og se om "date/time support" er satt til "enabled".
Siste kommentarer
46 min 38 sek siden
2 uker 1 dag siden
2 uker 1 dag siden
2 uker 6 dager siden
3 uker 21 timer siden
3 uker 6 dager siden
5 uker 1 dag siden
5 uker 2 dager siden
5 uker 2 dager siden
9 uker 2 dager siden