96 votes

Date Différence en php en jours?

Est-il un moyen rapide de calculer la date de différence en php? Par exemple:

$date1 = '2009-11-12 12:09:08';
$date2 = '2009-12-01 08:20:11';

Et puis faire un calcul, $date2 moins $date1

J'ai lu php.net de la documentation, mais pas de chance. Est-il un moyen rapide de le faire?

EDIT:

Je vais mettre l'ensemble de la réponse (pour certaines personnes qui pourraient curieux de voir comment faire)

$date1 = '2009-12-20 20:12:10';
$date2 = '2009-12-24 12:12:10';

$ts1 = strtotime($date1);
$ts2 = strtotime($date2);

$seconds_diff = $ts2 - $ts1;

echo floor($seconds_diff/3600/24);

Résultat de retour dans "jours", vous pouvez obtenir le résultat souhaité par la lecture de l' $seconds_diff, qui est la différence en quelques secondes

209voto

adam Points 706

Je recommanderais d'utiliser la fonction date-> diff , comme dans l'exemple ci-dessous:

    $dStart = new DateTime('2012-07-26');
   $dEnd  = new DateTime('2012-08-26');
   $dDiff = $dStart->diff($dEnd);
   echo $dDiff->format('%R'); // use for point out relation: smaller/greater
   echo $dDiff->days;
 

voir http://www.php.net/manual/en/datetime.diff.php

55voto

txyoji Points 2760

strtotime convertira votre chaîne de date en un horodatage Unix. (secondes depuis l’époque unix.

 $ts1 = strtotime($date1);
$ts2 = strtotime($date2);

$seconds_diff = $ts2 - $ts1;
 

22voto

Anirudh Sood Points 399

Le code ci-dessous donnera la sortie pour le nombre de jours, en éliminant la différence entre deux dates.

 $str = "Jul 02 2013";
$str = strtotime(date("M d Y ")) - (strtotime($str));
echo floor($str/3600/24);
 

3voto

Josh Barker Points 713

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X