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>
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&format=json', urlencode($url)))));</code>
Zusätzliche Überlegungen
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!