Calculer la duree entre deux date

Résolu/Fermé
achraf1996 Messages postés 29 Date d'inscription mardi 14 juillet 2015 Statut Membre Dernière intervention 22 novembre 2016 - 14 juil. 2015 à 12:18
achraf1996 Messages postés 29 Date d'inscription mardi 14 juillet 2015 Statut Membre Dernière intervention 22 novembre 2016 - 14 juil. 2015 à 20:03
Bonjour,

je souhaite avoir la durée entre deux datetime (d-m-Y H:i)

s'il vous plait aidée moi

merci

7 réponses

miramaze Messages postés 1429 Date d'inscription mercredi 29 juillet 2009 Statut Contributeur Dernière intervention 1 mai 2022 92
Modifié par miramaze le 14/07/2015 à 14:43
Hello, j'allais dire comme jordane45 :

https://ideone.com/QCQfCS

<?php

$dateTime1 = new DateTime("2015-07-14");
$dateTime2 = new DateTime("2015-01-01");

$interval = $dateTime2->diff($dateTime1);

var_dump($interval->format("%R%a days"));
3
miramaze Messages postés 1429 Date d'inscription mercredi 29 juillet 2009 Statut Contributeur Dernière intervention 1 mai 2022 92
Modifié par miramaze le 14/07/2015 à 18:37
Le principe en même temps c'est de chercher, je crois qu'on a donné assez de pistes.

Pour créer une DateTime avec un format spécifique, il y'a DateTime::createFromFormat().

Exemple live : https://ideone.com/AC6U92

<?php

$date1 = DateTime::createFromFormat("d/m/Y H:i:s", "06/05/15 08:34:32");

$date2 = DateTime::createFromFormat("d/m/Y H:i:s", "07/05/15 10:15:57");

$interval = $date1->diff($date2);

var_dump($interval->format("Le tout : %m mois, %d jours, %h heures, %i minutes, %s secondes"));

$totalHours = $interval->m * 730.4843 + $interval->d * 24 + $interval->h + 0.0166 * $interval->i + 0.0002 * $interval->s;

var_dump(sprintf("En heures : %s", $totalHours));

1
jordane45 Messages postés 38139 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 4 649
14 juil. 2015 à 13:43
Bonjour,

Tu peux regarder ici : https://www.php.net/manual/fr/datetime.diff.php
0
achraf1996 Messages postés 29 Date d'inscription mardi 14 juillet 2015 Statut Membre Dernière intervention 22 novembre 2016
14 juil. 2015 à 14:23
dans chaque code que jeu copie de l URL que vous m'avais donne
je rencontre l'erreur suivant
par exemple si j'ai execute le code suivant
<?php
function time_diff($dt1,$dt2){
$y1 = substr($dt1,0,4);
$m1 = substr($dt1,5,2);
$d1 = substr($dt1,8,2);
$h1 = substr($dt1,11,2);
$i1 = substr($dt1,14,2);
$s1 = substr($dt1,17,2);

$y2 = substr($dt2,0,4);
$m2 = substr($dt2,5,2);
$d2 = substr($dt2,8,2);
$h2 = substr($dt2,11,2);
$i2 = substr($dt2,14,2);
$s2 = substr($dt2,17,2);

$r1=date('U',mktime($h1,$i1,$s1,$m1,$d1,$y1));
$r2=date('U',mktime($h2,$i2,$s2,$m2,$d2,$y2));
return ($r1-$r2);

}
$l = time_diff(06/05/15 08:34:32,07/05/15 10:15:57);
echo $l;
?>


erreur est:
Parse error: syntax error, unexpected '08' (T_LNUMBER) in C:\xampp\htdocs\www\project\test date.php on line 22

ligne 22 -->$l = time_diff(06/05/15 08:34:32,07/05/15 10:15:57);

ce n'est pas le seul code que j'ai teste
0
miramaze Messages postés 1429 Date d'inscription mercredi 29 juillet 2009 Statut Contributeur Dernière intervention 1 mai 2022 92
Modifié par miramaze le 14/07/2015 à 15:00
Il manque des guillemets dans ton appel de fonction mais on peut faire directement :

Exemple live : https://ideone.com/fpgi9t

<?php

$date1 = new DateTime("06/05/15 08:34:32");
$date2 = new DateTime("07/05/15 10:15:57");

$interval = $date1->diff($date2);

var_dump($interval->format("%m mois, %d jours, %h heures, %i minutes, %s secondes"));
0

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

Posez votre question
achraf1996 Messages postés 29 Date d'inscription mardi 14 juillet 2015 Statut Membre Dernière intervention 22 novembre 2016
Modifié par achraf1996 le 14/07/2015 à 15:55
qu'est ce que je peut faire pour inverser le jour et le mois dans tons exemple l'intervalle entre les deux date de l'exemple est mémé pas 27h
merci
0
achraf1996 Messages postés 29 Date d'inscription mardi 14 juillet 2015 Statut Membre Dernière intervention 22 novembre 2016
14 juil. 2015 à 16:18
et d'avoir le tout sous forme d'heur

merci
0
achraf1996 Messages postés 29 Date d'inscription mardi 14 juillet 2015 Statut Membre Dernière intervention 22 novembre 2016
14 juil. 2015 à 20:03
merci miramaze :)
0