PHP Problème date passage heure été/hiver

Fermé
kthou Messages postés 2 Date d'inscription vendredi 25 juillet 2008 Statut Membre Dernière intervention 28 juillet 2008 - 28 juil. 2008 à 16:00
 benji07 - 17 oct. 2008 à 13:22
Bonjour,

Je suis actuellement entrain de développer une application de gestion de planning en PHP, et j'ai un problème lors des jours de passage d'heure d'été à l'heure d'hiver, et lors du passage de l'heure d'hiver à l'heure d'été.

En effet lors de ces jours le programme crée des décalages dans la date.Par exemple, pour l'année 2008 il me génère 2 fois le 26/10/2008 : le jour du passage à l'heure d'hiver.

Les dates sont générées du lundi au dimanche, à partir d'une date passée en paramètre, grâce à ce code :

		$tabh = explode("-", $_POST['date']); // On récupère une date passé en paramètre
		$indY = intval($tabh[0]); // On récupère L'année
		$indM = intval($tabh[1]); //on récupère le mois		
		$indD = intval($tabh[2]); // on récupère le jour
		$oneweek = 7*60*60*24;	//Permet de générer la date de la semaine suivante
		$d=mktime(0,0,0,$indM,$indD,$indY); 
                $oneday = 60*60*24;  ////Permet de générer la date du jour suivant

                 for ($i = 0; $i < 7; $i++)
		{
			$date=date("d/m/Y",$d);
			switch ($i)
			{
				case 0 : echo "<b>Lundi </b><i>".$date."</i>"; break;
				case 1 : echo "<b>Mardi </b><i>".$date."</i>"; break;
				case 2 : echo "<b>Mercredi </b><i>".$date."</i>"; break;
				case 3 : echo "<b>Jeudi </b><i>".$date."</i>"; break;
				case 4 : echo "<b>Vendredi </b><i>".$date."</i>"; break;
				case 5 : echo "<b>Samedi </b><i>".$date."</i>"; break;
				case 6 : echo "<b>Dimanche</b><i> ".$date."</i>"; break;
			}	
				$date=date("Y-m-d",$d); On génére la date
				afficherPlanning($date, $_POST['site2'], $_POST['equipement3']); // Fonction permettant d'afficher un planning en fonction de la date		
				$d += $oneday; // On passe au jour suivant
		}



J'aimerais donc savoir s'il y' a un moyen sûr de pouvoir générer des dates du lundi au dimanche sans avoir de problème lors des changements d'heure d'été et d'hiver.

Merci d'avance.
Bonne journée.

1 réponse

je viens d'avoir le même problème, utilise le code suivant pour changer de jour

$start_date_time = strtotime("+1 day",$start_date_time);

pour plus d'info, voir la doc de strtotime
0