$dt1 = new DateTime($myObject['ModifyTime']);
$dtNow = new DateTime();
$timeDifference = date_diff($dt1,$dtNow);
我需要检查DateTime dt1是否比现在早了> 300分钟。我怎么检查呢?
答案 0 :(得分:0)
检查差异是否大于5小时:
$dt1 = new DateTime($myObject['ModifyTime']);
$dtNow = new DateTime();
$timeDifference = date_diff($dt1,$dtNow);
if ($timeDifference->h > 5) {
// greater than 300 minutes
}
有关DateInterval格式化的详细信息,请参阅DatInterval::format()
答案 1 :(得分:0)
你完全可以在时间戳上做到这一点:
<?php
$dt1 = new DateTime($myObject['ModifyTime']);
$now = time();
var_dump($now - $dt1->getTimestamp() >= 300 * 60); // should return true
?>
时间戳以秒为单位(从1970-01-01开始)。所以300分钟是300 x 60秒。
答案 2 :(得分:0)
时间戳之间的差异以秒为单位,因此只需将其除以60分钟,依此类推
$datetime1 = new DateTime('2014-03-12 11:00');
$datetime2 = new DateTime('2014-03-12 16:00');
// difference in seconds
$interval = datetime2->getTimestamp() - $datetime1->getTimestamp();
// difference in minutes
$interval = interval / 60;
// difference in hours
$interval = interval / (60 * 60);