Bonjour,
Je viens de me rendre compte d'un phénomène bizzare à mes dépends : Le timestamp avance de 90000 minutes entre le 29 et le 30 octobre au lieu de 86400 !
Faites l'expérience :
Donne la chaine suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 echo strtotime('2006/10/28'); echo ' '; echo strtotime('2006/10/29'); echo ' '; echo strtotime('2006/10/30'); echo ' '; echo strtotime('2006/10/31'); echo ' '; echo strtotime('2006/11/01'); echo ' '; echo strtotime('2006/11/02'); echo ' ';
1161986400 1162072800 1162162800 1162249200 1162335600 1162422000
L'écart d'un jour est normalement de 86400 secondes, mais entre le 29 et le 30 on à 90000 au lieu de 86400 soit une heure de décalage.
Pourquoi ? Pourquoi le 29 au 30 cela correspondrait au changement d'heure ? Si c'est le cas l'opération inverse (fonction date) ne prend pas en compte ce changement et si on ajoute 86400 secondes (1 jour) au 29 on est encore au 29 ! et si on ajoute 7 jours on se retrouve 6 jours plus tard.
Partager