所以我有这段代码来确定数据库中当前时间和日期时间字段值之间的差异。
此代码为不在同一年的日期提供了奇怪的输出(下面的示例)。
$deadline = new DateTime($someDeadline, new DateTimeZone('CET'));
$time_now = new DateTime('NOW', new DateTimeZone('CET'));
$overdue_until = $time_now->diff($deadline);
echo $overdue_until->format('%R %d day/s, %h hours, %i minutes');
示例结果:
2015 年 2 月 9 日星期一 05:28:23 PM 得到差值 + 28 天/秒,17 小时,6 分钟从当前时间。
2015 年 1 月 14 日星期三上午 11:28:43 + 2 天/秒,10 小时 34 分钟