Php, probleme de date

Fermé
nazdreg - 31 mars 2009 à 01:19
 nazdreg - 5 avril 2009 à 10:59
Bonjour,

j'ai un peu petit problème depuis un moment, et ca s'est aggravé depuis le changement d'horaire.

plutot qu'un long énoncé, voila 3 lignes de code qui illustrent le pb :

<?php
echo "<br>", date("Y-m-d H:i:s",time());
echo "<br>",mktime(21,51,0,3,30,2009);
echo "<br>", date("Y-m-d H:i:s",time());

?>


le resultat de la premiere ligne est : 2009-03-31 01:12:29
le resultat de la deuxieme ligne est: 2009-03-30 23:12:29

il y a un écart de deux heures qui semblerait se crée dès l'instant ou j'utilise la fonction mktime.
il est a noté qu'en local les deux résultats sont identiques. J'ai cherché sur le net, et mis a part des problèmes sans solution, je n'ai rien trouvé.

(j'ai pas précisé, mais ce que je cherche c'est a regler ce pb de décalage, et voir meme a le comprendre. La solution d'ajouter 7200 a time() dans la 3eme ligne n'est bien sur pas satisfaisante, étant donné que lors de mes utilisations de la fonction date(), la fonction mktime n'aura pas été forcément appelée.)

Merci d'avance pour votre aide.
A voir également:

13 réponses

petites corrections (désolé) :

le resultat de la premiere ligne est : 2009-03-31 01:12:29
le resultat de la deuxieme ligne est: 2009-03-30 23:12:29 <= de la 3eme en fait ..^^

et pour le fait que ce soit plus grave depuis le changement d'horaire, c'est qu'avant le décalage n'était que d'une heure (mais en local il n'y a jamais eu de décalage)
0
personne n'a la moindre idée ..?
0
afrodje Messages postés 759 Date d'inscription mardi 13 mars 2007 Statut Membre Dernière intervention 22 janvier 2014 168
31 mars 2009 à 13:27
Qu'est ce que tu veux avoir?
Date du jour?
Date et heure du jour?
Date du jour + 2H?
...
0
ce que je voudrais c'est que le resultat de la fonction date() soit le meme que l'on ait fait appel ailleurs a mktime ou non.

dès l'instant ou on l'ou fait mktime, la fonction date se décale de deux heure, et c'est polutot problématique, et c'est donc ce problème que je voudrais regler (et ce sans passez par du +7200 a chaque utlisation de date() suivant un appel a mktime)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tjrs aucune idée ..?
0
up
0
...
0
bon, bah ... tant pi alors ..
0
JR des cavernes Messages postés 152 Date d'inscription mardi 6 mai 2008 Statut Membre Dernière intervention 19 mai 2009 84
2 avril 2009 à 15:09
Je crois qu'il faut regarder du coté de la fonction gmmktime() qui fonctionne comme mktime() mais en tenant compte du décalage horaire (enfin il me semble)
0
ok, merci, je vais regarder de ce coté alors. (je reposterai pour dire ce que ca donne, ca pourrait servir a d'autres)
0
le resultat est le meme, le premier appel a date() donne une heure/date, et une fois l'appel fait a gmmktime() la fonction date() retourne une valeur avec 2 heures d'ecart.

comment se fait il que la fonction (gm)mktime change les parametres de la fontion date() ?

il n'y a pas un moyen de rendre date() invariable ?
0
up
0
personne n'aurait l'adresse d'un forum plus spécialisé où je pourrai trouver ma réponse ?
0
ok ..
0