4

如果我以 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来获取$thumbnailwhere

$thumbnail = "http://i1.ytimg.com/vi/hYVVCRqTz1Q/hqdefault.jpg"
4

1 回答 1

0

$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;
                }
            }
        }
于 2013-09-01T11:20:24.410 回答