如何使用PHP gmdate函数将00:00:23转换为00:23

时间:2012-06-11 09:19:54

标签: php

我有这段代码在我的应用中显示视频时长。

$duration = 23; // seconds
$duration = gmdate("H:i:s", $duration);

以上代码输出00:00:23但是小时字段不是必需的,因为它只有23秒,我希望它显示00:23秒,如果视频长度超过小时,例如,它应该秀01:24:19

有什么想法吗?

由于

3 个答案:

答案 0 :(得分:2)

试试这个:

$duration = gmdate($duration >= 3600 ? 'H:i:s' : 'i:s', $duration);

答案 1 :(得分:0)

  

以上代码输出00:00:23但是小时字段不是必需的,因为它只有23秒,我希望它显示00:23秒,如果视频长度超过小时,例如,它应该秀01:24:19

简单的if怎么样?

<?php
$duration = $duration >= ( 60 * 60 ) ? gmdate( 'H:i:s', $duration ) : gmdate( 'i:s', $duration );
echo $duration;

答案 2 :(得分:0)

$duration = gmdate( ($duration >= 3600 ? "H:i:s" : "i:s"), $duration);