Youtube API:從URL 擷取影片ID
介紹
使用正規表示式
一種方法是使用正規表示式來解析URL 並識別視訊 ID。這是用PHP 寫的函數:
<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 服務
另一個選擇是利用Youtube 的OEMBED 服務,它提供有關視訊的附加資訊,包括其ID。使用方法如下:
<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>
其他注意事項
以上是如何從 YouTube URL 中提取影片 ID?的詳細內容。更多資訊請關注PHP中文網其他相關文章!