Bug dans la fonction date()

WRInaute discret
Bonsoir ,
Je me sers en ce moment de la fonction date() pour afficher l'heure actuelle dans un fichier.
Hors, il est actuellement 23H21 et la fonction date('H:i', time()) me retourne 22h21 .
Y a-t-il une explication à ce phénomène plutôt étrange ?

PS: je ne sais pas si ça change quelque chose, mais je travail en local avec WAMPSERVER

Merci d'avance de m'éclairer !

Mic54800
 
WRInaute accro
Ton fuseau horaire n'est pas correctement configuré et est basé sur UTC ou BST? Regarde ce que donne 'e' ou 'T' dans date...

Jacques.
 
WRInaute discret
date('e', time()) et date('T', time()) renvoient UTC.
En regardant dans php.ini, j'ai trouvé la ligne :
date.timezone = UTC
En la modifiant, rien ne se passe ...
 
WRInaute accro
Redémarré ton serveur = redémarré ton serveur web. Pas la machine entière (sauf si c'est un windows :mrgreen:).

Sinon c'est plutôt normal. UTC c'est greenwich.
En France on est en UTC+1.
Ton serveur te renvoie une date sur le fuseau UTC. Donc sur le fuseau horaire juste avant celui sur lequel tu est situé physiquement.

Pour définir la timezone correctement directement dans ton script php (ainsi tu peut permettre à tes utilisateurs de choisir sur quelle timezone ils sont dans leurs préférences) :

Code:
date_default_timezone_set('Europe/Paris');
 
WRInaute discret
J'ai pensé à redémarrer le serveur ... mais trop tard, quand je n'étais plus devant le PC =)
J'ai donc modifiée la ligne date.timezone = UTC par date.timezone = Europe/Paris et tout marche formidablement !
J'ai enfin vu à quoi ressemble cette fameuse page php.ini que je n'avais encore jamais rencontré auparavant, ce n'est pas faute d'en avoir entendu parlé ...

Un grand merci à vous pour votre aide !

A très bientôt !
Mic54800
 
Discussions similaires
Haut