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

时间:2015-09-02 08:05:04

标签: 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

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

2 个答案:

答案 0 :(得分:3)

DateIntervalinvert property,用于指明他们是正还是负。

您可以输出

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

r代表

  

签署" - "当为负时,空时为正

请参阅DateInterval::format docs

答案 1 :(得分:0)

- (void)viewWillDisappear:(BOOL)animated {
    [super viewWillDisappear:animated];
    NSParameterAssert(self.tabBarController);
    self.tabBarController.delegate = nil;
}

输出为-20。您也可以像以下示例交换日期。输出将为20。

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

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

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