Rumah > Artikel > pembangunan bahagian belakang > Bagaimanakah Saya Boleh Mengeluarkan ID Video YouTube daripada 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&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!