php 从两个日期的间隔中仅获取日期和小时
php get only day and hours from an interval of two date
如何计算两个日期之间的天数和小时数之差?例如,如果:
date1
= 2015-03-05 09:25:00
date2
= 2015-03-09 11:25:03
想要的结果是date1
和date2
的差,或者:
- 4 天 2 小时
我试过这样做:
$interval = date_diff($data_in, $data_out);
$days=$interval->days;
$hours=$interval->format('%h');
echo "days: ".$days. " hours: ".$hours;
$days
正确,但 $hours
不正确。谁能帮我弄清楚为什么?
完全使用这段代码,我得到的输出是 "days 4 hours: 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;
?>
你能post从哪里得到 $data_in 和 $data_out 吗?在您的 "example" 中,您使用 "date1" 和 "date2",在您的代码中,您使用 $data_in 和 $data_out。您能否通过执行以下操作来验证时区是否相同以及日期是否确实包含您所期望的内容:
var_dump($data_in);
var_dump($data_out);
如何计算两个日期之间的天数和小时数之差?例如,如果:
date1
= 2015-03-05 09:25:00date2
= 2015-03-09 11:25:03
想要的结果是date1
和date2
的差,或者:
- 4 天 2 小时
我试过这样做:
$interval = date_diff($data_in, $data_out);
$days=$interval->days;
$hours=$interval->format('%h');
echo "days: ".$days. " hours: ".$hours;
$days
正确,但 $hours
不正确。谁能帮我弄清楚为什么?
完全使用这段代码,我得到的输出是 "days 4 hours: 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;
?>
你能post从哪里得到 $data_in 和 $data_out 吗?在您的 "example" 中,您使用 "date1" 和 "date2",在您的代码中,您使用 $data_in 和 $data_out。您能否通过执行以下操作来验证时区是否相同以及日期是否确实包含您所期望的内容:
var_dump($data_in);
var_dump($data_out);