在PHP的gmdate()函数中隐藏小时(如果不需要)


Hide hour (if no need) in gmdate() function PHP

是否有办法在gmdate函数中隐藏小时?

我的意思是,我想显示xx.xx.xx如果秒>3600否则xx:xx。这可能吗?

我很难理解你的问题,但我不相信gmdate的标准功能是可能的。你必须执行你自己的条件语句。下面是一个简单的例子:

$time = time();
$date_info = getdate( $time);
$format = ( $date_info['minutes'] > 1) ? 'h.i.s' : 'i.s';
echo gmdate( $format, $time);

我没有在文档中找到简短的答案,所以我认为这个方法可以帮助:

public function getTime($time)
{
    $format = 's';
    if ($time >= 3600) {
        $format = 'H:i:s';
    } elseif ($time >= 60) {
        $format = 'i:s';
    }
    return trim(gmdate($format, $time), 0);
}