如何计算日期和时间两个日期之间的差异?例如,如果:
date1
= 2015-03-05 09:25:00 date2
= 2015-03-09 11:25:03 所需的结果是date1
和date2
之间的差异,或者:
我试过这样做:
$interval = date_diff($data_in, $data_out);
$days=$interval->days;
$hours=$interval->format('%h');
echo "days: ".$days. " hours: ".$hours;
$days
是正确的,但不是$hours
。任何人都可以帮我找出原因吗?
答案 0 :(得分:1)
正是使用这段代码,我得到的输出是“天4小时:2”:
<?php
$data_in = new DateTime('2015-03-05 09:25:00');
$data_out = new DateTime('2015-03-09 11:25:03');
$interval = date_diff($data_in, $data_out);
$days = $interval->days;
$hours=$interval->format('%h');
echo "days ".$days." hours: ".$hours;
?>
你可以发布你从$ data_in和$ data_out获得的地方吗?在您的“示例”中,您使用“date1”和“date2”,并在您的代码中使用$ data_in和$ data_out。您可以通过执行以下操作验证时区是否相同,并且日期确实包含您期望的内容:
var_dump($data_in);
var_dump($data_out);