DateTimeInterface
PHP Manual

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

说明

面向对象风格

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 ] )

Returns the difference between two DateTimeInterface objects.

参数

datetime

The date to compare to.

absolute

Should the interval be forced to be positive?

返回值

The DateInterval object representing the difference between the two dates 或者在失败时返回 FALSE.

范例

Example #1 DateTime::diff() example

面向对象风格

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

过程化风格

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

以上例程会输出:

+2 days

Example #2 DateTime object comparison

Note:

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);
?>

以上例程会输出:

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

参见


DateTimeInterface
PHP Manual