Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Mengekstrak ID Video daripada URL YouTube?

Bagaimana untuk Mengekstrak ID Video daripada URL YouTube?

Barbara Streisand
Barbara Streisandasal
2024-10-31 23:04:28214semak imbas

How to Extract a Video ID from a YouTube URL?

API YouTube: Mengeluarkan ID Video daripada URL

Pengenalan

Apabila bekerja dengan video Youtube dalam aplikasi web, adalah perlu untuk mengekstrak ID video daripada URL untuk mengakses metadatanya dan membenamkannya. API Youtube tidak menyediakan fungsi langsung untuk tugas ini, jadi kaedah alternatif mesti digunakan.

Menggunakan Ungkapan Biasa

Satu pendekatan ialah menggunakan ungkapan biasa untuk menghuraikan URL dan kenal pasti ID video. Berikut ialah fungsi yang ditulis dalam PHP:

<code class="php">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>

Perkhidmatan OEMBED YouTube

Pilihan lain ialah menggunakan perkhidmatan OEMBED Youtube, yang menyediakan maklumat tambahan tentang video, termasuk ID. Begini cara untuk menggunakannya:

<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>

Pertimbangan Tambahan

  • Contoh ungkapan biasa menyokong URL untuk video, senarai main dan saluran.
  • Ia mengendalikan pelbagai format URL, termasuk yang mempunyai parameter pertanyaan.
  • Menggunakan OEMBED ialah alternatif yang sah, tetapi ID perlu diekstrak daripada respons JSON yang dikembalikan.
  • Bahasa pengekodan lain akan mempunyai pendekatan mereka sendiri untuk menghuraikan URL dan mengekstrak ID video.

Atas ialah kandungan terperinci Bagaimana untuk Mengekstrak ID Video daripada URL YouTube?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn