Heim > Backend-Entwicklung > PHP-Tutorial > Wie extrahiere ich eine Video-ID aus einer YouTube-URL?

Wie extrahiere ich eine Video-ID aus einer YouTube-URL?

Barbara Streisand
Freigeben: 2024-10-31 23:04:28
Original
247 Leute haben es durchsucht

How to Extract a Video ID from a YouTube URL?

Youtube-API: Video-ID aus URL extrahieren

Einführung

Bei der Arbeit mit Youtube-Videos In Webanwendungen ist es erforderlich, die Video-ID aus der URL zu extrahieren, um auf deren Metadaten zuzugreifen und sie einzubetten. Die Youtube-API bietet keine direkte Funktion für diese Aufgabe, daher müssen alternative Methoden eingesetzt werden.

Verwendung regulärer Ausdrücke

Ein Ansatz besteht darin, reguläre Ausdrücke zum Parsen zu verwenden URL und identifizieren Sie die Video-ID. Hier ist eine in PHP geschriebene Funktion:

<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>
Nach dem Login kopieren

Youtube OEMBED-Dienst

Eine andere Möglichkeit besteht darin, den OEMBED-Dienst von Youtube zu nutzen, der zusätzliche Informationen über das Video, einschließlich dessen, bereitstellt AUSWEIS. So verwenden Sie es:

<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>
Nach dem Login kopieren

Zusätzliche Überlegungen

  • Der reguläre Beispielausdruck unterstützt URLs für Videos, Wiedergabelisten und Kanäle.
  • Es verarbeitet verschiedene URL-Formate, einschließlich solcher mit Abfrageparametern.
  • Die Verwendung von OEMBED ist eine gültige Alternative, aber die ID muss aus der zurückgegebenen JSON-Antwort extrahiert werden.
  • Andere Codierungssprachen tun dies haben ihre eigenen Ansätze zum Parsen von URLs und Extrahieren von Video-IDs.

Das obige ist der detaillierte Inhalt vonWie extrahiere ich eine Video-ID aus einer YouTube-URL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage