WRInaute occasionnel
Bonjour à tous et à toutes,
je galère depuis quelques jours avec des décalages de dates !!
Voilà : j'ai conçu un tableau (un planning) qui liste des jours, avec des cellules toutes les demi-journées (il y a donc des décalages de 12 heures entre cellules). Tout va bien.
Sauf pour le dernier week-end d'octobre, car il y a...le changement d'heure hiver-été:
00:00 + 12heures = 11:00 (au lieu de 12:00 !)
puis 11:00 + 12H00 = 23:00 et on reste dans la même journée !! Bref, les demi-journées suivantes sont décalées !!
J'ai créé la fonction decalage_date suivante :
J'ai essayé avec strtotime, rien. J'ai php4, donc date_default_timezone_set n'est pas utilisable, bref, j'ai essayé plein de soluces, et je me tourne maintenant vers vous. Une idée ??
je galère depuis quelques jours avec des décalages de dates !!
Voilà : j'ai conçu un tableau (un planning) qui liste des jours, avec des cellules toutes les demi-journées (il y a donc des décalages de 12 heures entre cellules). Tout va bien.
Sauf pour le dernier week-end d'octobre, car il y a...le changement d'heure hiver-été:
00:00 + 12heures = 11:00 (au lieu de 12:00 !)
puis 11:00 + 12H00 = 23:00 et on reste dans la même journée !! Bref, les demi-journées suivantes sont décalées !!
J'ai créé la fonction decalage_date suivante :
Code:
function decalage_date ($j, $decalage)
// $j string (ex: "21052004-12:00") retourne la date string (ex: "21052004-12:00") décalée de $decalage (en 1/2 journées)
// on ne tient pas compte des minutes ni des secondes
{
$month = (int) substr($j, 2, 2);
$day = (int) substr($j, 0, 2);
$year = (int) substr($j, 4 ,4);
$hour = (int) substr($j, 9, 2);
// on recale au debut des demi-journées
$timestamp = mktime ($hour, 0, 0, $month, $day, $year) + $decalage*3600*12;
$date = date("dmY-H:00", $timestamp);
return $date;
}