Difficulté avec date() de PHP

Résolu
adaro2000 Messages postés 46 Date d'inscription   Statut Membre Dernière intervention   -  
adaro2000 Messages postés 46 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je n'arrive pas à comprendre pourquoi date() du 26-10-2008 déconne sérieusement.

Voici mon code :

<?php

$fin=time();
$deb=$fin-(25*24*60*60);

$fin='2008-10-23';
$deb='2008-10-27';

list($y_fin,$m_fin,$d_fin)=explode('-',$fin);
list($y_deb,$m_deb,$d_deb)=explode('-',$deb);

$t_deb=mktime(0,0,0,$m_deb,$d_deb,$y_deb);
$t_fin=mktime(0,0,0,$m_fin,$d_fin,$y_fin);

$r_fin=$t_fin+(60*60*24);

while($r_fin>$t_deb) {
$day=$t_deb+(60*60*24)-1;
echo 'Debut :'.date('Y-m-d H:i:s',$t_deb).'          Fin :'.date('Y-m-d H:i:s',$day);
echo '<br/>Debut :'.$t_deb.'                       Fin :'.$day;

$t_deb=$day+1;
echo "<hr/>";
}

?>

Pouvez-vous m'aider ? Merci d'avance.

5 réponses

kilian Messages postés 8732 Date d'inscription   Statut Modérateur Dernière intervention   1 526
 
Je n'arrive pas à comprendre pourquoi date() du 26-10-2008 déconne sérieusement.

Mais encore?
1
chico200987
 
Ce n'est pas le terme employe qu'il te reproche, mais ton erreur n'est pas du tout explicite, dit ce qu'il ne fonctionne pas, ce que tu aimerais faire et et que tu obtiens... Ca sera peut-etre plus facile de t'aider par la suite....
1
kilian Messages postés 8732 Date d'inscription   Statut Modérateur Dernière intervention   1 526
 
Parfaitement!
0
adaro2000 Messages postés 46 Date d'inscription   Statut Membre Dernière intervention   2
 
Vous m'excusez le terme. Je suis dépassé par cela. Il y 2 jours presque que j'y travaille !
0
kilian Messages postés 8732 Date d'inscription   Statut Modérateur Dernière intervention   1 526
 
Oh c'est pas le terme qui dérange. On peut déconner, ya pas de soucis :-)
Non c'est juste que tu ne nous dit pas où quel est le problème.
Un message d'erreur? Un calcul bizzare..?
0
adaro2000 Messages postés 46 Date d'inscription   Statut Membre Dernière intervention   2
 
Ok.

Dans le code, j'incrémente le timestamp par (60*60*24)-1 secondes afin de lancer une requête avec le date('Y-m-d H:i:s') obtenu. Tout marche bien avec les dates antérieures, mais avec le 26-10-2008, le date('Y-m-d H:i:s') renvoyé, au lieu que ce soit 2008-10-26 23:59:59, il me retourne 2008-10-26 22:59:59 ; les résultats ne sont donc plus bons.

Je ne sais pas si c'est du à un mauvais usage de date ou ...

Pouvez-vous m'aider ?
0

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

Posez votre question
adaro2000 Messages postés 46 Date d'inscription   Statut Membre Dernière intervention   2
 
J'ai trouvé.
Il me fallait utilisé la fonction date_default_timezone_set() pour tout gérer automatiquement.
Merci pour vos contributions.
0