Comment calculer le nombre de jours entre deux dates en PHP ?
Réponses rédigées par Antoine
Dernière mise à jour : 2018-03-08 17:53:29
Question
J'ai deux dates sous la forme suivante :
Date 1 : 2012-06-01 02:12:51 Date 2 : 2017-05-12 11:10:00
Comment puis-je calculer le nombre de jours entre ces deux dates avec PHP.
Merci.
Réponse
Tu peux calculer le nombre de jours entre deux dates avec DateTime::diff.
<?php
error_reporting(E_ALL);
ini_set("display_errors", 1);
date_default_timezone_set('Europe/Paris');
$date_debut = "2012-06-01 02:12:51";
$date_fin = "2017-05-12 11:10:00";
$date1 = new DateTime($date_debut);
$date2 = $date1->diff(new DateTime($date_fin));
echo "Il y a ".$date2->days." jours entre ".$date_debut." et ".$date_fin;
?>
Plus d'info sur http://php.net/manual/fr/datetime.diff.php
Réponse
Une autre solution pour calculer le nombre de jours entre deux dates en PHP consiste à utiliser la fonction strtotime
, et ensuite la fonction round
pour arrondir.
<?php
error_reporting(E_ALL);
ini_set("display_errors", 1);
date_default_timezone_set('Europe/Paris');
$date_debut = strtotime("2012-06-01 02:12:51");
$date_fin = strtotime("2017-05-12 11:10:00");
echo "Il y a ".round(($date_fin - $date_debut)/60/60/24,0)." jours entre les deux dates";
?>