Php/docs/datetime.diff

来自菜鸟教程
跳转至:导航、​搜索

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

过程化风格

date_diff ( DateTimeInterface $originObject , DateTimeInterface $targetObject [, bool $absolute = false ] ) : DateInterval|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 represents the difference between the two dates 或者在失败时返回 false.

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.


范例

Example #1 DateTime::diff() example

面向对象风格


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

过程化风格


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

参见