Php разница во времени между датами

Разница дат (PHP)

Для того что бы посчитать разницу между двумя датами в PHP, нужно обе даты перевести в секунды при помощи функции int strtotime(string time [, int now]) , и вычислить разницу. Результат и будет разницей.

Функция date_diff()

Напишем функцию int date_diff($date1, $date2) , которая будет принимать два параметра (дата 1 и дата 2) и возвращать разницу в секундах.

Пример

В приведенном примере, обрабатывается несколько вариантов форматов дат.

‘; $date1 = ’10 September 2010′; $date2 = ’29 September 2009′; echo date_diff($date1, $date2).’ сек.
‘; $date1 = ‘next Thursday’; $date2 = ‘last Monday’; echo date_diff($date1, $date2).’ сек.
‘; $date1 = ‘now’; $date2 = ‘2011-01-01 00:00:01′; // этот результат будет всегда разным echo date_diff($date1, $date2).’ сек.
‘; ?>

Результат

41705135 сек.
29894400 сек.
864000 сек.
10273762 сек.

Послесловие

Если хотите секунды преобразовать в нормальную дату, то прочитайте статью: Секунды в дни-часы-минуты (PHP)

Категории

Читайте также

  • Количество секунд между датами (PHP)
  • Количество минут между датами (PHP)
  • Количество дней между датами (PHP)
  • Количество часов между датами (PHP)
  • Посчитать сколько времени прошло (PHP)
  • Время выполнения скрипта (PHP)
  • Количество секунд от начала дня (PHP)
  • Как получить TIMESTAMP дня текущей недели (PHP)
  • Преобразовать дату в секунды (PHP)
  • Установить часовой пояс (PHP)
  • Дата вчера сегодня завтра (PHP)
  • Название предыдущего месяца (PHP)

Комментарии

Вход на сайт

Введите данные указанные при регистрации:

Социальные сети

Вы можете быстро войти через социальные сети:

Источник

date_diff

Возвращает разницу между двумя DateTimeInterface объектами.

Список параметров

Дата и время для сравнения.

Читайте также:  Cleaning data with python

Используется, чтобы вернуть абсолютную разницу.

Возвращаемые значения

DateInterval объект представляет разницу между двумя датами или FALSE в случае возникновения ошибки.

Примеры

Пример #1 Пример использования DateTime::diff()

$datetime1 = new DateTime ( ‘2009-10-11’ );
$datetime2 = new DateTime ( ‘2009-10-13’ );
$interval = $datetime1 -> diff ( $datetime2 );
echo $interval -> format ( ‘%R%a дней’ );
?>

$datetime1 = date_create ( ‘2009-10-11’ );
$datetime2 = date_create ( ‘2009-10-13’ );
$interval = date_diff ( $datetime1 , $datetime2 );
echo $interval -> format ( ‘%R%a дней’ );
?>

Результат выполнения данных примеров:

Пример #2 Сравнение объектов DateTime

Замечание:

В PHP 5.2.2 объекты DateTime сравнивались при помощи операторов сравнения.

$date1 = new DateTime ( «now» );
$date2 = new DateTime ( «tomorrow» );

var_dump ( $date1 == $date2 );
var_dump ( $date1 < $date2 );
var_dump ( $date1 > $date2 );
?>

Результат выполнения данного примера:

bool(false) bool(true) bool(false)

Смотрите также

  • DateInterval::format() — Форматирует интервал
  • DateTime::add() — Добавляет заданное количество дней, месяцев, лет, часов, минут и секунд к объекту DateTime
  • DateTime::sub() — Вычитает заданное количество дней, месяцев, лет, часов, минут и секунд из времени объекта DateTime

Источник

Оцените статью