如果我使用youtube作为示例,$link = "http://www.youtube.com/watch?v=hYVVCRqTz1Q"
在http://www.youtube.com/watch?v=hYVVCRqTz1Q
的源代码中,我们可以找到
<meta property="og:image" content="http://i1.ytimg.com/vi/hYVVCRqTz1Q/hqdefault.jpg?feature=og">
我希望php使用$link
来获得$thumbnail
,其中
$thumbnail = "http://i1.ytimg.com/vi/hYVVCRqTz1Q/hqdefault.jpg"
$link='http://www.youtube.com/watch?v=hYVVCRqTz1Q';
现在,通过将URL与Pattern匹配来匹配URL是否是有效的Youtube链接。
$ypattern= "#(http://www.youtube.com)?/(v/([-|~_0-9A-Za-z]+)|watch'?v'=([-|~_0-9A-Za-z]+)&?.*?)#";
if(preg_match_all($ypattern,$link, $output))
{
foreach ($output[4] AS $video_id)
{
Youtube标题
$headers = get_headers('http://gdata.youtube.com/feeds/api/videos/' . $video_id)`;
if (strpos($headers[0], '200'))
{
$youtube = simplexml_load_file('http://gdata.youtube.com/feeds/api/videos/'.$video_id.'?v=1');
$json = json_decode(file_get_contents('http://gdata.youtube.com/feeds/api/videos/'.$video_id.'?v=2&alt=jsonc'));
缩略图>
$thumbnail = $json->data->thumbnail->sqDefault;
}
}
}