计算时间差异

时间:2011-10-19 04:49:15

标签: php mysql codeigniter date

我尝试在PHP中使用DateTime并使用diff方法查找时间戳与当前时间之间的时差。然而PHP给了我错误的区别。任何人都可以向我指出我的代码出了什么问题吗?谢谢!

PHP代码

function time() {
    $now = new DateTime;
    $later = new DateTime('2011-10-17 07:08:00');
    $interval = $now->diff($later);
    echo $now->format('y m d');
    echo "<br>";
    echo $later->format('y m d');
    echo "<br>";
    echo $interval->format('%a');
}

输出

11 10 19
11 10 17
6015

差异显然是2天,但我得到6015天!

2 个答案:

答案 0 :(得分:2)

您正在$now->diff($now);,应该是$now->diff($later)

答案 1 :(得分:0)

如上所述,结果应为0, 因为你正在做$ now-&gt; diff($ now)

如果你执行$ later-&gt; diff($ now),你应该得到预期的结果。