Bonjour,
Je cherche à cumuler des heures pour faire un total d'heures.
J'ai 3H35 + 4H00 + 2H25 + 1H55
Dois-je en passer par timestamp ?
Merci d'avance
Bonjour,
Je cherche à cumuler des heures pour faire un total d'heures.
J'ai 3H35 + 4H00 + 2H25 + 1H55
Dois-je en passer par timestamp ?
Merci d'avance
Y a pas, plus on fait, plus on sait. Plus on cherche, plus on sait chercher. Maintenant quant à trouver, c'est autre chose.
Pardon, j'ai oublié de mettre ce que j'avais fait :
Mais par exemple avec 3H45 + 2H30 le total = 21H56
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $nbrHeures=strtotime($horaire["heure_matin"])+strtotime($horaire["heure_apres_midi"]); $horaire["total_heures"]=strftime("%H:%M",$nbrHeures);
C'est tout de même beaucoup
Y a pas, plus on fait, plus on sait. Plus on cherche, plus on sait chercher. Maintenant quant à trouver, c'est autre chose.
Pourquoi tu ne passes pas par mktime ?
Comme ça tu fais des sommes d'entiers.
Ah ben oui, pas pensé...
Cela donne quelque chose comme ceci :
Et le résultat est bon
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 $h_matin = explode(":", $horaire["heure_matin"]); $heure_matin = mktime($h_matin[0],$h_matin[1], 0, 0, 0, 0); $h_apres_midi = explode(":", $horaire["heure_apres_midi"]); $heure_apres_midi = mktime($h_apres_midi[0],$h_apres_midi[1], 0, 0, 0, 0); $nbrHeures=$heure_matin+$heure_apres_midi; $nbrHeures=$nbrHeures+3600;//Ajout d'une heure $nbrHeures=strftime("%H:%M",$nbrHeures);
Merci de m'y avoir fait penser.
Y a pas, plus on fait, plus on sait. Plus on cherche, plus on sait chercher. Maintenant quant à trouver, c'est autre chose.
Non!!! damned !!!
Si je dépasse 24 heures, il me le retire, j'ai dû oublier quelque chose.
J'ai 20H00 + 6H45 = 2H45.
C'est dommage, c'est balo qu'en même.
Y a pas, plus on fait, plus on sait. Plus on cherche, plus on sait chercher. Maintenant quant à trouver, c'est autre chose.
J'ai une autre solution.
Ce qui donne, dans mon exemple "27:10".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 $heure1 = 20; $minute1 = 23; $heure2 = 6; $minute2 = 47; $heure3 = intval(($minute1 + $minute2) / 60 ); $minute3 = $minute1 + $minute2 - ($heure3 * 60); echo ($heure1 + $heure2 + $heure3) , ':', $minute3;
Je mets la soluce qui fonctionne :
Merci encore
Code : Sélectionner tout - Visualiser dans une fenêtre à part function cumulHeures($heure1,$heure2) { $time1=explode(":",$heure1); $time2=explode(":",$heure2); $heure=0; $minute=0; if(empty($time1[1]) && !empty($time2[1])){$heure=intval(($time2[1])/60);$minute = $time2[1] - ($heure * 60);} if(!empty($time1[1]) && empty($time2[1])){$heure=intval(($time1[1])/60);$minute = $time1[1] - ($heure * 60);} if(!empty($time1[1]) && !empty($time2[1])){$heure = intval(($time1[1] + $time2[1]) / 60 );$minute = $time1[1] + $time2[1] - ($heure * 60);} return ($time1[0] + $time2[0] + $heure).":".$minute; }
Y a pas, plus on fait, plus on sait. Plus on cherche, plus on sait chercher. Maintenant quant à trouver, c'est autre chose.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager