我想要显示这样的时间
80:00:00
小时:分钟:秒
当我使用这个
时gmdate("H:i:s", $time)
显示
08:00:00
gmdate()一旦达到24小时显示0,再次开始计数到24。
我试过这个
$minsec = gmdate("i:s", $time);
$hours = gmdate("d", $time)*24 + gmdate("H", $time);
echo $hours.':'.$minsec;
但是显示出来了。
32:00:00
我从其他地方了解stackoverflow,这可能是因为夏令时。见这里。
Convert days from gmdate() into hours?
我没有找到任何好的解决方案。什么是这个问题的一致的功能解决方案。
答案 0 :(得分:1)
我认为这就是你要做的事情,这对我有用:
<?php
$hour = gmdate("H", time());
if($hour < 10) {
echo gmdate("0H:i:s", time()); // you can just add a 0 in front of the hour if it is less than 10
}
else {
echo gmdate("H:i:s", time());
}
?>
希望这会有所帮助。如果没有评论并告诉我这是不是你想要的
答案 1 :(得分:0)
试试这个,对我有用:
$minsec = gmdate("i:s", $time);
$hours = (gmdate("d", $time)-1)*24 + gmdate("H", $time);
echo $hours.':'.$minsec;
-1很重要,因为当$ time = 1秒时,这一天就是一天。 我不知道为什么,一定是因为总有一天。