Time 带模返回时间分量
有人在一次轮班中做20小时42分16秒,总共74536秒。 如何从该人员为该轮班所做的秒数中获取小时数Time 带模返回时间分量,time,modulo,epoch,Time,Modulo,Epoch,有人在一次轮班中做20小时42分16秒,总共74536秒。 如何从该人员为该轮班所做的秒数中获取小时数 20 * 60 * 60 = 72000 42 * 60 = 2520 16 = 16 + ----- Total = 74536 ____________________________ Total % 60 = Sec
20 * 60 * 60 = 72000
42 * 60 = 2520
16 = 16
+ -----
Total = 74536
____________________________
Total % 60 = Seconds (16)
Total % ? = Minutes (42)
Total % ? = Hours (20)
已经审判了84600人;事实证明,当一个数字的模数较低时,它真的不是很有帮助,如果有人只登录几秒钟,我将不得不了解一些情况 您需要同时使用模数和除法:
t = seconds_in_shift;
secs = t % 60;
t /= 60;
mins = t % 60;
t /= 60;
hour = t;
或:
另一个选项使用标准C中的函数(
):
之后,
v1.rem
包含秒数v2.rem
包含分钟,而v2.quot
包含基于ttime
中最初秒数的小时。根据乔纳森的回答,我相信准确的答案应该是
$total_time = 61000;
$sec = $total_time % 60;
$total_time = ($total_time - $sec) / 60;
$min = $total_time % 60;
$hour = ($total_time - $min) / 60;
echo "$hour hours, $min minutes and $sec seconds";
但如果您的服务器安装了PHP7,则可以使用该功能。一种舍弃余数的整数除法
// $hour = ($total_time - $min) / 60; old code but still works
$hour = intdiv($total_time, 60); // PHP7 and above code
注:74536%3600=2536。然后只需将结果放在地板上,或转换为int。
$total_time = 61000;
$sec = $total_time % 60;
$total_time = ($total_time - $sec) / 60;
$min = $total_time % 60;
$hour = ($total_time - $min) / 60;
echo "$hour hours, $min minutes and $sec seconds";
// $hour = ($total_time - $min) / 60; old code but still works
$hour = intdiv($total_time, 60); // PHP7 and above code