【发布时间】:2017-01-12 07:22:01
【问题描述】:
我将获得随机秒数,该数字可能大于 86400,大于 24 小时(转换为小时),因此 php gmdate() 不会得到我需要的输出。所以我创建了以下代码。
$ts = mt_rand(36000,99999);
echo floor($ts/3600)."Hr ".floor(($ts/3600 - floor($ts/3600))*60)."min ".round(((($ts/3600 - floor($ts/3600))*60) - floor(($ts/3600 - floor($ts/3600))*60))*60)."sec";
我得到 22Hr 29min 4sec 的输出 $ts = 80944;
一切都很好,但对于 $ts = 39540; 输出是 10Hr 58min 60sec 这里是 60sec,这是错误的。它应该像 10Hr 59min 0sec. 我的代码有什么问题?
【问题讨论】:
-
工作正常:- eval.in/714758
-
对于
$ts = 99545;,我从我的代码中得到27Hr 39min 5sec,但是当我使用gmdate()时,输出是3:39:05这不适合我的场景。
标签: php time date-conversion