PHP:这些Date(diff?)格式参数是什么(例如%R%a)

时间:2018-03-20 10:49:29

标签: php datetime

我遇到了一些例子,人们分享代码来计算两天之间的差异。

EG。

$now = new DateTime();
$itemDate->diff($now)->format("%r%a")

但是这些类型的帖子几乎总是没有关于格式参数的解释。我可以使用常规的日期格式参数,但(例如在这种情况下)不确定例如。 %R

2 个答案:

答案 0 :(得分:2)

DateTimeInterface个对象之间存在差异时,将返回DateInterval个对象。您不再拥有DateTime,您有间隔,并且间隔的格式与DateTime对象不同。格式说明如下:http://php.net/manual/en/dateinterval.format.php

enter image description here

答案 1 :(得分:1)

r - 签署" - "当差异为负时,为正时为空 a - 由于DateTime :: diff()或(未知)而导致的总天数。

举个例子,

<?php
$now = new DateTime();
$d = new DateTime('2019-01-01T15:03:01.012345Z');
$x = $d->diff($now)->format("%r%a");

echo $x;

?>

输出:字符串(4)&#34; -287&#34;