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

标签 php date datetime

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

这是我正在使用的:

$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

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

最佳答案

DateInterval 具有 invert property指定它们是正面的还是负面的。

你可以像这样输出

$interval->format("%r%a");

r 代表

Sign "-" when negative, empty when positive

DateInterval::format docs .

关于php - 计算日期之间的天数但显示负 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32347754/

相关文章:

javascript - 使用填充的下拉列表复制 php 表的新行

PHP 将 2 位数年份转换为 4 位数年份

sql - 通过sql更新表的第一行

php - Carbon 解析日期格式

javascript - 用于删除无效 HTML 标记之间的空格的正则表达式 - 即 "</b >"应为 "</b>"

php mysql比较日期是否相等

javascript - 无法获取另一个页面ajax的数据值

javascript - 为什么 Javascript 的 Date.getDate() .setDate() 行为如此不可预测?

c - 查找现在 N 天后的日期

javascript - 最小和最大日期