php - 使用YouTube API获取持续时间

标签 php youtube youtube-api

我需要使用Youtube API V3获取视频时长。我的应用程序可以在API V3上正常工作,但现在不起作用。

我找到了一个可行的示例,它的工作原理是:

$dur = file_get_contents("https://www.googleapis.com/youtube/v3/videos?part=contentDetails&id=[VIDOID]&key=[API KEY]");


$duration =json_decode($dur, true);

foreach ($duration['items'] as $vidTime) {
    $vTime= $vidTime['contentDetails']['duration'];
}

积分:Youtube API v3 , how to get video durations?

这将返回类似这样的时间格式。
PT24M30S 

我如何才能将其节省到可读的时间。喜欢24:30?

最佳答案

一种可能的方法是使用函数str_replace();

$stamp = "PT24M30S";
$formated_stamp = str_replace(array("PT","M","S"), array("",":",""),$stamp);

echo $formated_stamp; //should give "24:30"

红利内容-前导零

为了添加前导零,必须首先使用explode()将字符串分割开,然后使用sprintf()单独格式化数字;最后将它们重新添加在一起。
$exploded_string = explode(":",$formated_stamp);
$new_formated_stamp = sprintf("%02d", $exploded_string[0]).":".sprintf("%02d", $exploded_string[1]);

关于php - 使用YouTube API获取持续时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31161896/

相关文章:

php - 在没有 CREATE 权限的情况下将 SQL 转储导入到 Typo3 安装中

javascript - 分组交替行颜色与变化

swift - 无法打开要在 YouTube tvOS 应用程序上播放的 YouTube URL

javascript - 使用javascript自动在youtube评论页面中单击菜单按钮

javascript - YouTube iframe 播放器 API - OnStateChange 未触发

php - MYSQL数据库设计/SELECT语句协助

php - 尝试将 COUNT(*) 与 SELECT 语句一起使用

jquery mobile弹出关闭按钮-如何关闭而不返回?

iframe - YouTube未加载高分辨率缩略图

youtube - 什么是观众YouTube分析API报告中的百分比-受众特征数据