Разница дат в php по дням? [дубликат]


этот вопрос уже есть ответ здесь:

  • Как вычислить разницу между двумя датами с помощью PHP? 31 ответы

есть ли быстрый способ рассчитать разницу дат в php? Например:

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

а затем сделать расчет, $date2 минус $date1

Я читаю php.net документация, но не повезло. Есть есть быстрый способ сделать это?

3 80

3 ответа:

strtotime преобразует строку даты в метку времени unix. (секунды с эпохи unix.

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

$seconds_diff = $ts2 - $ts1;

Я бы рекомендовал использовать дата->др, как в примере ниже:

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

см.http://www.php.net/manual/en/datetime.diff.php

ниже код даст выход для количества дней, вынимая разницу между двумя датами..

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