【问题标题】:How to pregmatch youtube url with the youtube short url and get videoids from them php如何 preg_match youtube url 与 youtube 短 url 并从他们那里获取视频 php
【发布时间】:2017-08-05 21:36:55
【问题描述】:

您好,我正在尝试预匹配 youtube url 和 youtube 缩短 url,并从中获取视频 id 能够预匹配 youtube url 但无法预匹配短 url 这是我的代码..

 if (preg_match('@^(?:https://(?:www\\.)?youtube.com/)(watch\\?v=|v/)([a-zA-Z0-9_]*)@', $video_id, $match)) 

videoid=https://www.youtube.com/watch?v=Xt4S-Ot0Jcs 如何预匹配短网址,如https://youtu.be/Xt4S-Ot0Jcs 如何使用 php 从两者中获取视频 ID

【问题讨论】:

    标签: php youtube


    【解决方案1】:
    public function get_id($url)
    {
        $ytshorturl = 'youtu.be/';
        $ytlongurl = 'www.youtube.com/watch?v=';
        if (strpos($url, $ytshorturl) !== false) {
            $url = str_replace($ytshorturl, $ytlongurl, $url);
        }
        $components = parse_url($url);
        parse_str($components['query'], $results);
        return $results['v'];
    }
    

    $url = "https://youtu.be/oeg192rQ1xE"; //示例网址

    echo get_id($url);

    【讨论】:

      【解决方案2】:

      如果您只想获取 videoId,可以尝试使用更简单的正则表达式:

      if (preg_match('@(youtube\.com/watch\?v=|youtu\.be/)([a-zA-Z0-9_]*)@', $video_id, $match))
      

      【讨论】:

        猜你喜欢
        • 2011-10-12
        • 2013-02-06
        • 2012-05-22
        • 2011-03-28
        • 2016-03-19
        • 1970-01-01
        • 2011-11-05
        • 2019-12-07
        相关资源
        最近更新 更多