Wie extrahiere ich YouTube-Video-IDs aus URLs mit PHP?

Barbara Streisand
Freigeben: 2024-11-02 06:34:02
Original
836 Leute haben es durchsucht

How to Extract YouTube Video IDs from URLs with PHP?

YouTube-Video-IDs mit PHP extrahieren

In Webanwendungen ist es oft notwendig, YouTube-Video-IDs aus vom Benutzer eingegebenen URLs zu extrahieren. Obwohl die YouTube-API keine direkte Funktion für diese Aufgabe bereitstellt, gibt es alternative Lösungen.

Eine Methode besteht darin, einen regulären Ausdruck zum Parsen der URL-Zeichenfolge zu verwenden. Hier ist eine Beispiel-PHP-Funktion, die dies tut:

<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

Zum Beispiel: Ausführen von echo youtube_id_from_url('http://youtu.be/NLqAF9hrVbY'); würde „NLqAF9hrVbY“ ausgeben.

Eine andere Möglichkeit ist die Verwendung des oEmbed-Dienstes von YouTube. Dadurch werden Metadaten zum Video bereitgestellt, einschließlich der ID. Hier ist ein Beispiel:

<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

Der oEmbed-Dienst stellt zusätzliche Informationen wie den Videotitel und das Miniaturbild bereit. Allerdings ist die ID nicht direkt in der Antwort enthalten.

Letztendlich hängt die Wahl der zu verwendenden Methode von Ihren spezifischen Anforderungen ab. Die Verwendung eines regulären Ausdrucks ist im Allgemeinen einfacher, während der oEmbed-Dienst umfassendere Informationen bereitstellen kann.

Das obige ist der detaillierte Inhalt vonWie extrahiere ich YouTube-Video-IDs aus URLs mit PHP?. 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