DateTime::diff

DateTimeImmutable::diff

DateTimeInterface::diff

date_diff

(PHP 5 >= 5.3.0, PHP 7)

DateTime::diff -- DateTimeImmutable::diff -- DateTimeInterface::diff -- date_diffReturns the difference between two DateTime objects

Beschreibung

Objektorientierter Stil

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

Prozeduraler Stil

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

Returns the difference between two DateTimeInterface objects.

Parameter-Liste

datetime

The date to compare to.

absolute

Should the interval be forced to be positive?

Rückgabewerte

The DateInterval object representing the difference between the two datesIm Fehlerfall wird FALSE zurückgegeben..

Beispiele

Beispiel #1 DateTime::diff() example

Objektorientierter Stil

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

Prozeduraler Stil

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

Die obigen Bespiele erzeugen folgende Ausgabe:

+2 days

Beispiel #2 DateTime object comparison

Hinweis:

As of PHP 5.2.2, DateTime objects can be compared using comparison operators.

<?php
$date1 
= new DateTime("now");
$date2 = new DateTime("tomorrow");

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

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

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

Siehe auch

  • DateInterval::format() - Formats the interval
  • DateTime::add() - Addiert einen Wert von Tagen, Monaten, Jahren, Stunden, Minuten und Sekunden zu einem DateTime-Objekt
  • DateTime::sub() - Subtrahiert eine Anzahl von Tagen, Monaten, Jahren, Stunden, Minuten und Sekunden von einem DateTime-Objekt.