LaravelでYouTubeリンクをiframeに変換する方法


  1. YouTubeのリンクを取得する まず、ユーザーが入力したYouTubeのリンクを取得する必要があります。これは通常、フォームから送信されたデータやデータベースから取得することができます。

  2. リンクからYouTubeの動画IDを抽出する YouTubeのリンクから動画IDを抽出する必要があります。一般的に、YouTubeのURLは「https://www.youtube.com/watch?v=動画ID」という形式です。したがって、正規表現やURLの解析を使用して、動画IDを取得します

例:

$link = 'https://www.youtube.com/watch?v=abcdefghijk'; // YouTubeのリンク
$pattern = '/(?:https?:\/\/)?(?:www\.)?youtu(?:\.be\/|be\.com\/(?:watch\?v=|embed\/|v\/|user\/(?:[\w\-]+\?v=|[\w\-]+\/videos\/|[\w\-]+\/u\/\d+\/|[\w\-]+\/u\/\w\/|embed\/?\??(?:[\w\-]+\=[\w\-]+&?)*)))([\w\-]+)/';
preg_match($pattern, $link, $matches);
$videoId = $matches[1]; // 動画IDを取得
  1. iframeタグを生成する 取得した動画IDを使用して、iframeタグを生成します。

例:

$iframe = '<iframe width="560" height="315" src="https://www.youtube.com/embed/' . $videoId . '" frameborder="0" allowfullscreen></iframe>';
  1. Laravelビューにiframeを表示する 最後に、生成したiframeタグをLaravelのビューファイルで表示します。これを行うために、適切なビューファイルを編集し、生成したiframeタグを埋め込む必要があります。

例:

<div>
    {!! $iframe !!} <!-- iframeを表示 -->
</div>

これで、LaravelでYouTubeのリンクをiframeに変換し、ビューで表示する方法がわかりました。上記の手順とコード例を使用して、自分のプロジェクトに組み込むことができます。