Per verificare qual'è l'idea che ha il PHP della propria timezone si può eseguire il seguente codice:
print date_default_timezone_get() . "\n"; date_default_timezone_set('Europe/Rome'); print date_default_timezone_get() . "\n";
In generale si dovrà impostare il file /etc/php5/apache2/php.ini
(o simile, controllare in che ambiente viene eseguito il PHP):
date.timezone = "Europe/Rome"
Contiene un database delle timezone. Consente di istanziare oggetti di tipo tzinfo, ad esempio pytz.utc
oppure pytz.timezone('CET')
.
Nella tabella che segue ogni timestamp (calcolato come distanza dallo Unix epoch del 1970-01-01 00:00:00 UTC) è distante dal successivo 86400 secondi, cioè un giorno intero. La rappresentazione in orario locale (CET) mostra che è intervenuto il cambio da ora solare ad ora legale:
Ora locale | Timestamp | UTC |
---|---|---|
2015-03-28 01:00:00 CET | 1427500800 | 2015-03-28T00:00:00Z |
2015-03-29 01:00:00 CET | 1427587200 | 2015-03-29T00:00:00Z |
2015-03-30 02:00:00 CEST | 1427673600 | 2015-03-30T00:00:00Z |
2015-03-31 02:00:00 CEST | 1427760000 | 2015-03-31T00:00:00Z |