Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimanakah Saya Boleh Mengeluarkan ID Video YouTube daripada URL?

Bagaimanakah Saya Boleh Mengeluarkan ID Video YouTube daripada URL?

DDD
DDDasal
2024-11-01 20:35:30649semak imbas

How Can I Extract a YouTube Video ID from a URL?

Mengekstrak ID Video daripada URL YouTube

Apabila bekerja dengan URL video YouTube dalam kod anda, selalunya perlu mengekstrak ID video untuk pengenalan atau pemprosesan. Walaupun API YouTube tidak menawarkan fungsi secara langsung untuk melakukan ini, anda boleh menggunakan teknik mudah untuk menghuraikan URL dan mendapatkan ID.

Menghuraikan URL dengan Ungkapan Biasa

Satu pendekatan biasa ialah menggunakan ungkapan biasa untuk memadankan dan mengekstrak ID video daripada URL. Berikut ialah contoh fungsi PHP yang menggunakan teknik ini:

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

Fungsi ini mengambil URL YouTube sebagai input dan memadankannya dengan ungkapan biasa yang menangkap ID video. Corak memastikan bahawa ia sepadan dengan URL YouTube yang sah dalam format berbeza.

Contoh Penggunaan

Untuk menggunakan fungsi ini, anda boleh menyediakan URL YouTube dan mendapatkan semula ID video yang diekstrak :

<code class="php">echo youtube_id_from_url('http://youtu.be/NLqAF9hrVbY'); # NLqAF9hrVbY</code>

Pendekatan Alternatif: Perkhidmatan Oembed YouTube

Walaupun tidak berkaitan secara langsung dengan API, YouTube turut menyediakan perkhidmatan oembed yang menawarkan lebih banyak maklumat meta tentang sesuatu URL YouTube. Walau bagaimanapun, ID video tidak boleh diakses secara langsung melalui perkhidmatan ini.

Dengan menggunakan perkhidmatan oembed, anda boleh mendapatkan maklumat seperti tajuk, pengarang, lakaran kecil dan banyak lagi. Ini boleh berguna untuk mengesahkan URL YouTube atau mengekstrak butiran lain yang berkaitan.

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

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengeluarkan ID Video YouTube daripada URL?. 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