DateTime::diff

DateTimeImmutable::diff

DateTimeInterface::diff

date_diff

(PHP 5 >= 5.3.0, PHP 7)

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

Коментарии

DateTimeImmutable and DateTime objects can be compared using comparison operators, however `==` and `===` produce different results:

<?php
var_dump
(new DateTimeImmutable('2012-10-10') === new DateTimeImmutable('2012-10-10'));

// false
?>

BUT:

<?php
var_dump
(new DateTimeImmutable('2012-10-10') == new DateTimeImmutable('2012-10-10'));

// true
?>
2024-05-20 07:51:00
http://php5.kiev.ua/manual/ru/datetime.diff.html

    Поддержать сайт на родительском проекте КГБ