Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/231.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用PHP gmdate函数将00:00:23转换为00:23_Php - Fatal编程技术网

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

如何使用PHP gmdate函数将00:00:23转换为00:23,php,Php,我有此代码在我的应用程序中显示视频持续时间 $duration = 23; // seconds $duration = gmdate("H:i:s", $duration); 上面的代码输出00:00:23,但小时字段不是必需的,因为它只有23秒,我希望它显示00:23秒,例如,如果视频长度超过小时,它应该显示01:24:19 有什么想法吗 谢谢 上面的代码输出00:00:23,但小时字段不是必需的,因为它只有23秒,我希望它显示00:23秒,例如,如果视频长度超过小时,它应该显示01:24

我有此代码在我的应用程序中显示视频持续时间

$duration = 23; // seconds
$duration = gmdate("H:i:s", $duration);
上面的代码输出00:00:23,但小时字段不是必需的,因为它只有23秒,我希望它显示00:23秒,例如,如果视频长度超过小时,它应该显示01:24:19

有什么想法吗

谢谢

上面的代码输出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;
试试这个:

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