我在数据库中插入了两次,如何将结果相差两次,结果显示为h:s:m格式,所以我将尝试查找这次的差异
$from_time = $worker->timefm; //08:30:00
$to_time= $worker->timeto; //17:00:00
$diff=$to_time-$from_time;
echo $diff; //9
答案只显示9个,正确答案是8:30为什么这个只显示9个答案如何以时间格式显示如何解决此问题?帮我!!预先感谢
我将尝试使用此代码
但不起作用
答案 0 :(得分:0)
这里我正在使用date()
函数。在调用此函数之前,我使用date_default_timezone_set()
将默认时区设置为UTC。
date_default_timezone_set('UTC');
$diff= strtotime($to_time) - strtotime($from_time);
echo date('H:i:s', $diff);
OUTPUT
08:30:00
答案 1 :(得分:0)
您可以使用此功能计算时差,它也可以与日期和时间数据一起使用。 只需几秒钟即可获得差异,然后将其转换为h:m:s格式即可。
function get_time_difference($t1, $t2)
{
$t1 = strtotime($t1);
$t2 = strtotime($t2);;
$hour = floor(($t1-$t2)/3600);
$minute =floor(($t1-$t2)/60)%60;
$second = ($t1-$t2)-($hour*3600+$minute*60);
return (date("H:i:s",strtotime($hour.":".$minute.":".$second)));
}
答案 2 :(得分:0)
<?php
// Time Calculation
$datetime1 = new DateTime('13:40:50');
$datetime2 = new DateTime('15:45:57');
$interval = $datetime1->diff($datetime2);
echo $interval->format('%H:%M:%S time');
?>
只需运行此代码,您将获得H:M:S格式的时差 像这样 02:00:07时间