PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPでYouTube動画のIDを取得する方法:parse_urlとparse_strの活用

YouTube動画のIDは、URLに含まれる「v」パラメータとして確認できます。PHPでは、parse_url関数とparse_str関数を組み合わせることで、この動画IDを簡単に取り出すことができます。

サンプルコード

<?php
    $url = "https://www.youtube.com/watch?v=VX96I7PO8YU";
    parse_str( parse_url( $url, PHP_URL_QUERY ), $my_array );
    echo $my_array['v'];
?>

実行結果

VX96I7PO8YU

コードの解説

まず、parse_url関数がURL文字列を受け取り、スキーム・ホスト・クエリなどの情報に分解します。第2引数にPHP_URL_QUERYを指定すると、クエリ文字列(「?」以降の部分)のみを取得できます。第2引数を省略した場合は、URLの全構成要素を含む配列が返され、必要な要素を選んで利用することが可能です。

YouTube動画のURLには「v=VX96I7PO8YU」のように動画IDが含まれています。目的は、「v」の後ろから「&」の前までの文字列、つまり動画IDを取得することです。これを実現するのがparse_str関数です。parse_str関数は、GETパラメータと同様の形式(key=value&key=value...)の文字列を解析し、その内容に応じた変数を生成する働きを持ちます。

たとえば、クエリ文字列が「v=5R60Tpz3Bow」であれば、「$v」という名前の変数が自動的に作成されます。ただし、既存の変数を意図せず上書きしてしまう恐れがあるため、第2引数に配列を渡す方法が推奨されます。この場合、結果は連想配列(ここでは$my_array)に格納されるため、どの変数に値が入るかを制御でき、安全に扱うことができます。

正規表現を使う際の注意点

注意 ― 正規表現(regex)を使えば多くの文字列処理の問題を解決できますが、パターンを少しでも誤ると予期しないバグやエラーの原因になりやすいため、慎重に使う必要があります。単にURLからパラメータを取り出したいだけであれば、今回のようにparse_urlparse_strを組み合わせる方が、安全かつ確実な方法といえるでしょう。

  1. PowerPointにYouTube動画を埋め込む方法|スライドを魅力的にするテクニック

    単調なPowerPointプレゼンテーションを聞かされ続けるのは、かなり辛いものです。発表者であるあなたなら、聴衆にあくびをさせず、スライドに集中してもらい、楽しんでもらいたいはず。プレゼンをより魅力的にする方法のひとつが、プレゼンテーションにYouTube動画を組み込むことです。 使用しているPowerPointのバージョンによって、YouTube動画の挿入方法は異なります。この記事では、PowerPointへのYouTube動画の埋め込み方と、そもそもなぜ埋め込むべきなのかを解説します。 プレゼンにYouTube動画を入れるメリット プレゼンでは、聴衆に楽しんでもらいながら、新し

  2. WhatsAppでYouTube動画を共有する方法|リンク送信・ステータス投稿・リンクなしの3つのやり方

    この記事では、WhatsAppでYouTube動画を共有する方法を詳しく解説します。チャットへのリンク送信、ステータス(ステータスアップデート)への投稿、そしてリンクを使わずに動画そのものを共有する方法まで、追加ソフトをダウンロードすることなく実現できる最もシンプルな手順をご紹介します。AndroidでもiOSでも同じ流れで操作できるので、ぜひ参考にしてください。なお、事前に知っておきたいポイントが2つあります。まず、WhatsAppで直接送信できる動画サイズには16MBという上限があります。また、WhatsApp WebやPC版WhatsAppからはステータスを投稿できません。ステータス投稿