PHP Carbon diffInDays false 没有 return 否定

PHP Carbon diffInDays false did not return negative

所以我必须计算两个日期之间的日期差异。结果之一应该是负数,但它不起作用,因为它 return 是正数。这是我的代码。

我的table数据

$date1 = "2016-09-17"
$date2 = "2016-08-23"

我的blade

@foreach($table as $row)
   <td>{{ $row->date1 }}</td>
   <td>{{ $row->date2}}</td>
   <td>{{ Carbon::parse($row->date2)->diffInDays(Carbon::parse($row->date1),false) + 1 }}</td>
@endforeach

指导和帮助将不胜感激。

假设在比较提供的两个日期时出现问题,我可以看到为什么会出现错误。

diffInDays 计算从左值到提供值的“天数距离”,因此:

日期 2 和日期 1 之间的差异实际上是正的。从 2016-08-23 到 2016-09-17,未来的天数为正。但是,如果你想翻转 date2 和 date1 的顺序,你会得到你想要的结果。

尝试:

Carbon::parse($row->date1)->diffInDays(Carbon::parse($row->date2),false) + 1 }}