YouTube URL からビデオ ID を抽出するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-11-01 07:05:02
オリジナル
351 人が閲覧しました

How Can I Extract Video IDs from YouTube URLs?

YouTube URL からのビデオ ID の抽出

ユーザーが YouTube ビデオ URL を提供するシナリオでは、さまざまな機能のためにビデオ ID を抽出する必要があります。 。 YouTube API はこの目的のための専用機能を提供していませんが、代替アプローチが利用可能です。

1 つの方法では、正規表現を使用して URL を解析し、ビデオ ID を分離します。このアプローチを利用した PHP 関数の例を次に示します。

<code class="php">/**
 * get youtube video ID from URL
 *
 * @param string $url
 * @return string Youtube video id or FALSE if none found.
 */
function youtube_id_from_url($url) {
    $pattern = '%^# Match any youtube URL
    (?:https?://)?  # Optional scheme. Either http or https
    (?:www\.)?      # Optional www subdomain
    (?:             # Group host alternatives
      youtu\.be/    # Either youtu.be,
    | youtube\.com  # or youtube.com
      (?:           # Group path alternatives
        /embed/     # Either /embed/
      | /v/         # or /v/
      | /watch\?v=  # or /watch\?v=
      )             # End path alternatives.
    )               # End host alternatives.
    ([\w-]{10,12})  # Allow 10-12 for 11 char youtube id.
    $%x';
    $result = preg_match($pattern, $url, $matches);
    if ($result) {
        return $matches[1];
    }
    return false;
}</code>
ログイン後にコピー

もう 1 つのオプションは、YouTube の oEmbed サービスを利用することです。ビデオ ID は直接提供されませんが、URL に関する追加のメタデータが提供されます。 JSON を使用した例を次に示します:

<code class="php">$url = 'http://youtu.be/NLqAF9hrVbY';
var_dump(json_decode(file_get_contents(sprintf('http://www.youtube.com/oembed?url=%s&amp;format=json', urlencode($url)))));</code>
ログイン後にコピー

以上がYouTube URL からビデオ ID を抽出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート