我正在尝试使用date_diff比较两个日期,但它甚至没有接近正确的数字.要进行故障排除,我正在做一个简单的硬编码测试:
$date1 = date_create("2014-03-20");
$date2 = date_create("2017-11-13");
$diff = date_diff($date1,$date2);
echo $diff->format('%r%d');
Run Code Online (Sandbox Code Playgroud)
这对我来说输出"24" - 所以它甚至不在球场.任何想法在这里出了什么问题?
$ 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
)
Run Code Online (Sandbox Code Playgroud)
通过回声$diff->d你会得到一天的差异.如果您想拥有总天数.使用$diff->days.只是玩弄它.