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 $targetObject [, bool $absolute = FALSE ] ) : DateInterval|false
public DateTimeImmutable::diff ( DateTimeInterface $targetObject [, bool $absolute = FALSE ] ) : DateInterval|false
public DateTimeInterface::diff ( DateTimeInterface $targetObject [, bool $absolute = FALSE ] ) : DateInterval|false

Prozeduraler Stil

date_diff ( DateTimeInterface $originObject , DateTimeInterface $targetObject [, bool $absolute = FALSE ] ) : DateInterval|false

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 represents the difference between the two datesIm Fehlerfall wird FALSE zurückgegeben..

The return value more specifically represents the interval to apply to the original object ($this or $originObject) to arrive at the $targetObject. This process is not always reversible.

Beispiele

Beispiel #1 DateTime::diff() example

Objektorientierter Stil

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

Prozeduraler Stil

<?php
$origin 
date_create('2009-10-11');
$target date_create('2009-10-13');
$interval date_diff($origin$target);
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.