Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk Mengekstrak ID Video YouTube daripada URL Menggunakan PHP?
Cara Mengekstrak ID Video YouTube Menggunakan PHP
Pengenalan
Mengekstrak ID video YouTube daripada URL adalah penting untuk banyak aplikasi. Ini membolehkan pembangun mengenal pasti dan memproses video berdasarkan ID unik mereka. Walaupun API YouTube tidak menyediakan fungsi langsung untuk ini, terdapat kaedah lain yang tersedia.
Pendekatan Berasaskan Regex
Penyelesaian biasa melibatkan penggunaan ungkapan biasa untuk ekstrak ID video daripada URL. Fungsi berikut menyediakan pelaksanaan dalam PHP:
<code class="php">function youtube_id_from_url($url) { $pattern = '%^ (?: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>
Contoh Penggunaan
Untuk menggunakan fungsi, hanya hantar URL YouTube sebagai parameter:
<code class="php">$video_id = youtube_id_from_url('http://youtu.be/NLqAF9hrVbY'); echo $video_id; // NLqAF9hrVbY</code>
Perkhidmatan oEmbed YouTube
Walaupun bukan fungsi API secara langsung, YouTube menawarkan perkhidmatan oEmbed. Dengan membuat permintaan ke URL tertentu dengan URL video sebagai parameter, anda boleh mendapatkan maklumat tambahan tentang video, termasuk IDnya. Kaedah ini mungkin memberikan lebih banyak konteks dan membenarkan pengesahan URL.
<code class="php">$url = 'http://youtu.be/NLqAF9hrVbY'; $oembed_url = sprintf('http://www.youtube.com/oembed?url=%s&format=json', urlencode($url)); $oembed_response = json_decode(file_get_contents($oembed_url)); if ($oembed_response) { $video_id = $oembed_response->video_id; }</code>
Atas ialah kandungan terperinci Bagaimana untuk Mengekstrak ID Video YouTube daripada URL Menggunakan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!