«

php将时间差(秒)格式化为冒号间隔的时分秒格式

时间:2024-2-20 10:25     作者:韩俊     分类: PHP


php将时间差(秒)格式化为冒号间隔的时分秒格式。

php系统函数,示例:

echo gmstrftime('%H:%M:%S', 65);
//输出:00:01:05

以上函数有个缺点是当秒数足够大,超过24小时后,会显示错误,下面这个函数解决了这个问题,同时也达到了相同的效果。

/**
 * @desc php将时间差(秒)格式化为冒号间隔的时分秒格式
 * @param int $time
 * @return string
 */
function secTime($time = 0) {
    if ($time < 1) return '00:00:00';
    $str = '';
    if ($time >= 3600) {
        $str .= str_pad(floor($time / 3600), 2, '0', STR_PAD_LEFT) . ':';
        $time = $time % 3600;
    } else {
        $str .= '00:';
    }
    if ($time >= 60) {
        $str .= str_pad(floor($time / 60), 2, '0', STR_PAD_LEFT) . ':';
        $time = $time % 60;
    } else {
        $str .= '00:';
    }
    if ($time > 0) {
        $str .= str_pad($time, 2, '0', STR_PAD_LEFT);
    }
    return $str;
}

标签: php php教程

热门推荐