[PHP] Calcul du temps écoulé entre 2 dates
Résolu/Fermé
freeman034
-
6 nov. 2005 à 22:03
haha -
haha -
Bonjour à tous,
Je voudrais savoir si quelqu'un peut m'aider à calculer le temps écoulé entre 2 dates, par exemple une date $date et le jour présent.
Je sais qu'il faut faire un timestamp pour les 2 dates après les convertir en secondes, les soustraires et les reconvertir en mois et années mais j'y arrive pas... quelqu'un peut me donner un exemple concrêt svp ? Merci !
Je voudrais savoir si quelqu'un peut m'aider à calculer le temps écoulé entre 2 dates, par exemple une date $date et le jour présent.
Je sais qu'il faut faire un timestamp pour les 2 dates après les convertir en secondes, les soustraires et les reconvertir en mois et années mais j'y arrive pas... quelqu'un peut me donner un exemple concrêt svp ? Merci !
19 réponses
Franchement je crois qu'il vaut mieux passer un peu de temps sur la doc PHP plutôt que se taper des lignes de code comme ça !
Il existe une méthode diff (de la classe DateTime) qui permet de calculer directement un intervalle. Après avec l'intervalle on peut récupérer ce qu'on veut : le nombre de jours, de secondes, etc.
Voilà un exemple d'utilisation avec des chaines du genre : '2009-06-08 20:30:00'
$d1 = new DateTime('2009-06-08 20:30:00');
$d2 = new DateTime('2009-06-10 20:30:00');
$diff = $d1->diff($d2);
$nb_jours = $diff->d;
Voilà j'espère que ça aura servit à quelqu'un ;)
Il existe une méthode diff (de la classe DateTime) qui permet de calculer directement un intervalle. Après avec l'intervalle on peut récupérer ce qu'on veut : le nombre de jours, de secondes, etc.
Voilà un exemple d'utilisation avec des chaines du genre : '2009-06-08 20:30:00'
$d1 = new DateTime('2009-06-08 20:30:00');
$d2 = new DateTime('2009-06-10 20:30:00');
$diff = $d1->diff($d2);
$nb_jours = $diff->d;
Voilà j'espère que ça aura servit à quelqu'un ;)
22 mai 2012 à 01:06
comment récupérer la diff des mois et années
merci d'avance
9 août 2012 à 09:50
3 sept. 2012 à 14:18
7 déc. 2012 à 11:01
Il ne faut donc pas utiliser :
$nb_jours = $diff->d;
mais :
$nb_jours = $diff->days;