PHP gmdate不会将秒转换为正确的数量

时间:2015-03-02 12:03:47

标签: php

我在PHP中使用gmdate将秒转换为H:i:s

我有这段代码:

echo gmdate("H:i:s", '480002');

所以我应该将480002秒转换为H:i:s应该显示

133:20:02

但它唯一显示

13:20:02

2 个答案:

答案 0 :(得分:3)

使用此

<?php

$init = 480002;
$hours = floor($init / 3600);
$minutes = floor(($init / 60) % 60);
$seconds = $init % 60;

echo "$hours:$minutes:$seconds";

?>

答案 1 :(得分:0)

gmdate正在使用日期值而不是dateinterval值,格式字符串中的H因此表示自午夜以来的小时数。一般情况下,天数不会超过133小时,因此将其解释为5天13小时。你没有要求它显示日期部分,所以只显示13个小时。

有多种方法可以计算总小时数。

我建议看一下这个问题: Calculate number of hours between 2 dates in PHP