3

可能重复:
在 PHP 中将秒转换为天、小时、分钟、秒
如何将小数转换为时间,例如。HH:MM:SS

我在这里做的是在 mysql 中将发布时间保存为 UTC,在从 sql 检索时间戳后,我使用strtotime()它来将其转换为秒,然后将偏移时间添加到这些秒以显示当前本地时间。现在的问题是,当我尝试将这些秒数重新转换为数小时时,例如

$seconds = 330*60 //Thats 5.30 hours and 60 seconds gives me 19800 as an output

现在,当我将其重新转换为小时时,它向我显示 5.50 而不是 5.30

sprintf ("%.2f", 19800/60/60); //Output of 5.50 instead I want is 5.30 

我知道这是一个数学表达式做错了,任何帮助都会得到一个清晰的解释。

4

1 回答 1

0

不是最优雅的解决方案,但这有效:

$original = (19800 / 60 / 60);
$hours = floor($original);
$minutes = ($original - $hours) * 60;

或者使用模数可能更好:

$hours = floor(19800 / 60 / 60);
$minutes = (19800 / 60) % 60;
于 2012-09-04T18:42:43.710 回答