PHP   发布时间:2022-04-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了PHP DateTime():显示大于24小时的时间长度,但如果超过24小时则不显示天数大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我想显示以小时,分钟和秒为单位测量的时间长度,其中一些时间长度大于24小时.目前我正在尝试这个:
$timeLength = new datetiR_121_11845@e();
$timeLength->setTime(25,30);
echo $timeLength->format('H:m:i'); // 01:30:00

我希望它显示25:30:00.

我正在寻找一个面向对象的解决方案.

谢谢 :)

解决方法

由于你已经有几秒钟的长度,你可以计算它:
function timeLength($seC)
{
    $s=$sec % 60;
    $m=(($sec-$s) / 60) % 60;
    $h=floor($sec / 3600);
    return $h.":".substr("0".$m,-2).":".substr("0".$s,-2);
}
echo timeLength(6534293); //outputs "1815:04:53"

如果你真的想使用datetiR_121_11845@e对象,这里有一种(作弊)解决方案:

function dtLength($seC)
{
    $t=new datetiR_121_11845@e("@".$sec);
    $r=new datetiR_121_11845@e("@0");
    $i=$t->diff($r);
    $h=intval($i->format("%a"))*24+intval($i->format("%H"));
    return $h.":".$i->format("%I:%S");
}
echo dtLength(6534293); //outputs "1815:04:53" too

如果您需要OO并且不介意创建自己的类,您可以尝试

class DTinterval
{
    private $sec=0;
    function __construct($s){$this->sec=$sec;}
    function formet($format)
    {
        /*$h=...,$m=...,$s=...*/
        $rst=str_replace("H",$h,$format);/*etc.etc.*/
        return $rst;
    }
}

大佬总结

以上是大佬教程为你收集整理的PHP DateTime():显示大于24小时的时间长度,但如果超过24小时则不显示天数全部内容,希望文章能够帮你解决PHP DateTime():显示大于24小时的时间长度,但如果超过24小时则不显示天数所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。