计算日期之间的天数但显示负 PHP

Dar*_*ney 2 php datetime date

我知道如何计算两个日期之间的天数,如下所示,但是,如果差异是过去的,我如何将差异返回为负数?

这是我正在使用的:

$today = new DateTime('now'); // today is 2015-09-02

$date1 = new DateTime("2015-08-13"); // 20 days ago

$diff = $today->diff($date1)->format("%a");

echo "diff is $diff"; // shows 20 but I want it to return -20
Run Code Online (Sandbox Code Playgroud)

我试过反转变量,但它似乎并不关心顺序。

Die*_*rri 5

DateInterval具有指定它们是正数还是负数的invert属性

你可以像这样输出

$interval->format("%r%a");
Run Code Online (Sandbox Code Playgroud)

r 代表

负数时标“-”,正数时为空

DateInterval::format docs