如何在两小时之间获得差异。 例如:
$data1 = '2018-04-24 02:30:00';
$date2 = now();
如何在$ date1和$ date2之间获得差异。
编辑:OP在评论中发布的代码
<?php //date_default_timezone_set('UTC+6');
$time1 = strtotime('2018-04-25 12:00:00');
$time2 = time();
echo $time2.'<br>';
echo date('Y-m-d h:i:s', $time2).'<br>';
echo ($time1-$time2)/3600; ?>
答案 0 :(得分:1)
<?php
$datetime1 = new DateTime('2018-04-24 02:30:00');
$datetime2 = new DateTime(date('Y-m-d H:i:s'));
$interval = $datetime1->diff($datetime2);
echo $interval->format('%Y %m %d %H:%I:%S');
结果将是:
00 0 1 08:06:15
00 --> years
0 --> months
1 --> days
08 --> hours
06 --> minutes
15 --> seconds
您可以根据需要进行修改,但我建议您至少保留几天,因为小时数可能相差几个小时,但天数可能相差很多天。
答案 1 :(得分:0)
您是否可以使用Carbon class为DateTime提供简单的PHP API扩展 Carbon
答案 2 :(得分:0)
$data1 = '2018-04-24 02:30:00';
$data2 = date('y-m-d H:i:s');
$formated_in = date('Y-m-d H:i:s', strtotime($data1));
$formated_out = date('Y-m-d H:i:s', strtotime($data2));
$formated_new_in = strtotime($formated_in);
$formated_new_out = strtotime($formated_out);
$sub_total = $formated_new_out - $formated_new_in;
$sub_total = gmdate("H:i", $sub_total);
echo $sub_total;