Le support des dates et heures a été entièrement réécrit en PHP 5.1.x, et n'utilise plus du tout le système pour gérer les opérations sur les fuseaux horaires. Désormais, il utilise, dans l'ordre :
La fuseau horaire configuré avec la fonction date_default_timezone_set()
La variable d'environnement TZ si elle n'est pas vide
une prédiction magique (si le système d'exploitation le supporte)
Si aucune méthode ci-dessus ne fonctionne, UTC.
Pour s'assurer de la précision, et éviter les alertes
E_STRICT
, vous devez
définir votre fuseau horaire dans le fichier
php.ini avec ce format :
date.timezone = Europe/Paris
Les fuseaux horaires supportés sont listés dans l'annexe de la documentation : annexe des fuseaux horaires.
Notez aussi que strtotime() retourne désormais FALSE
en cas d'échec, au lieu de -1.