Różnica dat w php w dniach? [duplikat]

To pytanie ma już odpowiedź tutaj:

Czy istnieje szybki sposób na obliczenie różnicy dat w php? Na przykład:

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

A następnie wykonaj obliczenia, $date2 minus $ date1

I read php.net dokumentacja, ale bez powodzenia. Czy istnieje szybki sposób na to?

Author: trejder, 2009-12-21

3 answers

Strtotime przekonwertuje łańcuch daty NA uniksowy znacznik czasu. (sekundy od epoki Uniksa.

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

$seconds_diff = $ts2 - $ts1;
 43
Author: txyoji,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-12-21 14:19:20

Polecam użycie funkcji Date - > diff , jak w przykładzie poniżej:

   $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;

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

 168
Author: adam,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-08-23 09:14:59

Poniższy kod da wynik na ilość dni, usuwając różnicę między dwiema randkami..

$str = "Jul 02 2013";
$str = strtotime(date("M d Y ")) - (strtotime($str));
echo floor($str/3600/24);
 12
Author: Anirudh Sood,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-07-03 10:00:51