在用户互相编写的消息中,我希望将Youtube链接转换为ittube缩略图+标题。
那么如何检查$ msg是否包含youtube视频链接,如果是,则应该获取视频ID(?v =),然后运行:
$.getScript( 'http://gdata.youtube.com/feeds/api/videos/$videoid?v=2&alt=json-in-script&callback=youtubeFetchDataCallback' );
如何做到这一点?
答案 0 :(得分:1)
已在此处部分解决:parse youtube video id using preg_match
编辑或者您可以在PHP中使用parse_url()检查主机是否为youtube,如果它是读取查询字符串并拆分为键/值对并读取“v”值
编辑2
<?php
$url = "http://www.youtube.com/watch?v=QDe6MZQjpho";
$url = parse_url($url);
if($url['host'] == "www.youtube.com") {
parse_str($url['query'], $output);
$videoID = $output['v'];
} else {
echo "not youtube.com";
}
?>
编辑3 另一种方式
<?php
$url = "http://www.youtube.com/watch?v=QDe6MZQjpho";
if(preg_match("#http://(.*)\.youtube\.com/watch\?v=(.*)(&(.*))?#", $url, $matches)){
$videoID = $matches[2];
} else {
echo "not youtube.com";
}
?>