我试图使用date_diff比较两个日期,但它甚至没有接近正确的数字。要进行故障排除,我正在进行简单的硬编码测试:
$date1 = date_create("2014-03-20");
$date2 = date_create("2017-11-13");
$diff = date_diff($date1,$date2);
echo $diff->format('%r%d');
这输出" 24"对我来说 - 所以它甚至不在球场。任何想法在这里出了什么问题?
答案 0 :(得分:8)
$ diff结果包含一个DateInterval
对象。它包含以下内容:
DateInterval Object
(
[y] => 3
[m] => 7
[d] => 24
[h] => 0
[i] => 0
[s] => 0
[f] => 0
[weekday] => 0
[weekday_behavior] => 0
[first_last_day_of] => 0
[invert] => 0
[days] => 1334
[special_type] => 0
[special_amount] => 0
[have_weekday_relative] => 0
[have_special_relative] => 0
)
通过回声$diff->d
你会得到一天的差异。如果您想拥有总天数。使用$diff->days
。只是玩弄它。
答案 1 :(得分:4)
答案 2 :(得分:2)