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


DateTimeImmutable::diff

DateTimeInterface::diff

date_diff

(PHP 5 >= 5.3.0)

DateTime::diff -- DateTimeImmutable::diff -- DateTimeInterface::diff -- date_diffВозвращает разницу между двумя DateTime объектами

Описание

Объектно-ориентированный стиль

public DateInterval DateTime::diff ( DateTimeInterface $datetime2 [, bool $absolute = false ] )
public DateInterval DateTimeImmutable::diff ( DateTimeInterface $datetime2 [, bool $absolute = false ] )
public DateInterval DateTimeInterface::diff ( DateTimeInterface $datetime2 [, bool $absolute = false ] )

Процедурный стиль

DateInterval date_diff ( DateTimeInterface $datetime1 , DateTimeInterface $datetime2 [, bool $absolute = false ] )

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

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

datetime

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

absolute

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

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

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

Примеры

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

Объектно-ориентированный стиль

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

Процедурный стиль

<?php
$datetime1 
date_create('2009-10-11');
$datetime2 date_create('2009-10-13');
$interval date_diff($datetime1$datetime2);
echo 
$interval->format('%R%a дней');
?>

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

 +2 days 

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

Замечание:

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

<?php
$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