php 秒转成时间

分享一个自己写的秒转成时间的方法。
网上的那些方法,都是抄来抄去,而且不符合业务需要 。
这个方法的实现就是 ,把一个秒级别的字符串转换成“易读”的时间显示格式。
如果时间长度达不到的范围,则不做显示。
由于,每月的长度不一样,这里的最大长度是天,可以根据自己的业务需要,自行扩展


function secondFormat($allSec){
    // 总秒数
    $remainSec = (int)$allSec;
    // 可读时间
    $humanTime = '';

    // 最大的时间长度是天
    if($remainSec > 86400) {
        $days = (int)($remainSec / 86400);
        $remainSec = $remainSec % 86400;
        $humanTime .= $days.'天';
    }
    // 判断小时
    if($remainSec > 3600) {
        $hours = (int)($remainSec / 3600);
        $remainSec = $remainSec % 3600;
        $humanTime .= $hours.'时';
    }
    // 判断分钟
    if($remainSec > 60) {
        $minutes = (int)($remainSec / 60);
        $remainSec = $remainSec % 60;
        $humanTime .= $minutes.'分';
    }
    // 判断秒钟
    if($remainSec > 0) {
        $seconds = $remainSec;
        $humanTime .= $seconds.'秒';
    }
    return $humanTime ?? '[瞬间]';
}
posted @ 2019-04-12 16:09  houxin  阅读(359)  评论(0编辑  收藏  举报