php:日期时算术

时间:2010-06-20 10:55:33

标签: php datetime

我对PHP的DateInterval类有点困惑。我真正想要的是两个DateTime邮票之间经过的秒数。

$t1 = new DateTime( "20100101T1200" );
$t2 = new DateTime( "20100101T1201" );
// number of seconds between t1 and t2 should be 60

echo "difference in seconds: ".$t1->diff($t2)->format("%s");

然而我得到的只是零。 DateInterval类不适合算术吗? 如何我得到两个时间戳之间的“确切”秒数(或小时数等)?

1 个答案:

答案 0 :(得分:9)

如果您只想快速使用秒数,也可以使用

$diff = abs($t1->getTimestamp() - $t2->getTimestamp());

您的代码返回0,因为实际差异为0,示例中的差异为 1分钟(1分0秒)。如果您打印%i 格式,您将获得1,这是$t1$t2的正确差异。