Bagaimana untuk Mengekstrak ID Video YouTube daripada URL Menggunakan PHP?

Susan Sarandon
Lepaskan: 2024-10-31 08:20:38
asal
431 orang telah melayarinya

How to Extract YouTube Video IDs from URLs Using 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>
Salin selepas log masuk

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>
Salin selepas log masuk

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&amp;format=json', urlencode($url));
$oembed_response = json_decode(file_get_contents($oembed_url));
if ($oembed_response) {
    $video_id = $oembed_response->video_id;
}</code>
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!