Php Youtube嵌入开始时间直接从regex组在数组中转换为时间(以秒为单位)
我想扩展一个从YouTube返回嵌入代码的php包。我想扩展它,用开始时查询字符串生成嵌入代码 一段代码:Php Youtube嵌入开始时间直接从regex组在数组中转换为时间(以秒为单位),php,youtube,Php,Youtube,我想扩展一个从YouTube返回嵌入代码的php包。我想扩展它,用开始时查询字符串生成嵌入代码 一段代码: 'website' => 'http://youtube.com', 'ssl' => true, 'url' => [ '^(https?://)?(?:www\.)?youtu\.be/([0-9a-zA-Z-_]{11})', '^(https?://)?(?:ww
'website' => 'http://youtube.com',
'ssl' => true,
'url' => [
'^(https?://)?(?:www\.)?youtu\.be/([0-9a-zA-Z-_]{11})',
'^(https?://)?(?:www\.)?(?:youtu\.be/|youtube\.com/(?:embed/|v\/|watch\?v=|watch\?.+&v=))((\w|-){11})(?:.+&t=)(\S+)',
],
'info' => [
'id' => '{1}',
'url' => '{protocol}://youtu.be/{1}',
'dataUrl' => '{protocol}://gdata.youtube.com/feeds/api/videos/{1}?v=2&alt=jsonc',
'imageRoot' => '{protocol}://img.youtube.com/vi/{1}/',
],
'render' => [
// iframe attributes
'sizeRatio' => 1.77,
'iframe' => [
'src' => '{protocol}://www.youtube.com/embed/{1}?rel=0&wmode=transparent&start={3}',
'width' => 560,
'height' => 315,
'allowfullscreen' => null,
'frameborder' => 0,
],
{3} 是来自YouTube的开始时间,格式为1h22m59s或22m59s或59s。我从最后一个组的正则表达式中得到{3}:(?:.+&t=)(\S+)
是否可以直接在数组值中运行函数以转换{3}秒的时间?对于嵌入视频,我需要&start=123(不是?start=1h22m59s)我通过编辑包源代码解决了这个问题。这是最好的解决办法