难道我做错了什么? 我需要youtube代码,但它不会返回实际值。PHP:从YouTube网址提取视频ID
if(preg_match_all("http:\/\/www\.youtube\.com\/v\/(.*)(.*)", $row->n_texto, $matches){
$code = $image_to_thumb .= "http://i1.ytimg.com/vi/".$matches[1][0]."/0.jpg";
}
编辑 - 基于评论ircmaxell,在文本中的链接结构是:
的http:// www.youtube.com/v/plMvAh10HVg%26hl=en%26fs = 1%26rel = 0
更新
的问题是:我的代码返回一个像这样的链接:
http://www.youtube.com/v/plMvAh10HVg%26hl=en%26fs=1%26rel=0
我可以用正则表达式阻止它出现之前%26hl=en%26fs=1%26rel=0
?
链接,您提供的是不是一个有效的链接。即使你urldecode它,它仍然会是`plMvAh10HVg&HL = EN&FS = 1的rel = 0`这不是一个有效的URL(它应该有一个`?`之前的第一个`和`位)... – ircmaxell 2011-02-01 17:08:39
灿” t youtube links be watch?v = blah以及?如果您只查看/ v/blah链接,只需使用parse_url获取路径并在开始处删除/ v即可。 – 2011-02-01 17:14:16