【发布时间】:2012-04-15 22:36:00
【问题描述】:
我目前正在编写一个 web 应用程序,其中一些页面严重依赖能够拉入正确的 youtube 视频并播放它。 youtube URL 由用户提供,因此通常会带有变体,其中一个可能如下所示:
而另一个可能看起来像这样:
目前我可以使用以下代码从后者中提取 ID:
function get_youtube_video_id($video_id)
{
// Did we get a URL?
if ( FALSE !== filter_var( $video_id, FILTER_VALIDATE_URL ) )
{
// http://www.youtube.com/v/abcxyz123
if ( FALSE !== strpos( $video_id, '/v/' ) )
{
list( , $video_id ) = explode( '/v/', $video_id );
}
// http://www.youtube.com/watch?v=abcxyz123
else
{
$video_query = parse_url( $video_id, PHP_URL_QUERY );
parse_str( $video_query, $video_params );
$video_id = $video_params['v'];
}
}
return $video_id;
}
如何处理使用?v 版本而不是/v/ 版本的URL?
【问题讨论】:
-
可能重复:stackoverflow.com/questions/5831191....
-
呃,上面的代码已经在第一个 URL 上工作了?
-
#2 评论是最简单的方法:stackoverflow.com/questions/3392993/…
标签: php url youtube get parse-url