开发者

Get the Youtube Video Thumbnail from Youtube video Url using PHP

Lets say I have a youtube video url www.youtube.com/watch?v=B4CRkpBGQzU&feature=youtube_gdata&par1=1&par2=2

I开发者_开发技巧 want to get the video thumbnail -> i3.ytimg.com/vi/B4CRkpBGQzU/default.jpg I just need a simple php script that I will input the $url and get the $img If posible I would like to strip all other parameters and be left with just the www.youtube.com/watch?v=B4CRkpBGQzU as the $url


To extract the identifier from the following URL :

$url = 'www.youtube.com/watch?v=B4CRkpBGQzU&feature=youtube_gdata&par1=1&par2=2';


You can first use parse_url() to get the query string :

$queryString = parse_url($url, PHP_URL_QUERY);
var_dump($queryString);

Which, here, would give you :

string 'v=B4CRkpBGQzU&feature=youtube_gdata&par1=1&par2=2' (length=49)


And, then, use parse_str() to extract the parameters from that query string :

parse_str($queryString, $params);
var_dump($params);

Which would get you the following array :

array
  'v' => string 'B4CRkpBGQzU' (length=11)
  'feature' => string 'youtube_gdata' (length=13)
  'par1' => string '1' (length=1)
  'par2' => string '2' (length=1)


And, now, it's just a matter of using the v item from that array, injecting it into the thumbnail URL :

if (isset($params['v'])) {
    echo "i3.ytimg.com/vi/{$params['v']}/default.jpg";
}

Which gives :

i3.ytimg.com/vi/B4CRkpBGQzU/default.jpg


<?php
        function getYoutubeImage($e){
        //GET THE URL
        $url = $e;

        $queryString = parse_url($url, PHP_URL_QUERY);

        parse_str($queryString, $params);

        $v = $params['v'];  
        //DISPLAY THE IMAGE
        if(strlen($v)>0){
            echo "<img src='http://i3.ytimg.com/vi/$v/default.jpg' width='150' />";
        }
    }
?>

<?php
    getYoutubeImage("http://www.youtube.com/watch?v=CXWSlho1mMY&feature=plcp");
?>


Get the Youtube Video Thumbnail from Youtube video Url using PHP

Get the Youtube Video Thumbnail from Youtube video Url using PHP

Get the Youtube Video Thumbnail from Youtube video Url using PHP

Get the Youtube Video Thumbnail from Youtube video Url using PHP

$url = "http://youtube.com/watch?v=B4CRkpBGQzU";
$url = explode("&", $url);
$vidID = preg_match("|?v=(.*)|", $url);
$thumb_default = file_get_contents("http://img.youtube.com/vi/$vidID/default.jpg");

$thumb1 = file_get_contents("http://img.youtube.com/vi/$vidID/0.jpg");
$thumb2 = file_get_contents("http://img.youtube.com/vi/$vidID/1.jpg");
$thumb3 = file_get_contents("http://img.youtube.com/vi/$vidID/2.jpg");
$thumb4 = file_get_contents("http://img.youtube.com/vi/$vidID/3.jpg");


Assuming youtube doesn't change their format:

$thumb = preg_match('/watch\?v=(.*)&feature/',$url, $matches);

This will get you the 'B4CRkpBGQzU' part in $matches[1];


Getting the video ID from the URL

$url = "http://www.youtube.com/watch?v=oHg5SJYRHA0&amp;feature=relate";
parse_str( parse_url( $url, PHP_URL_QUERY ) );
echo $vidID;//this is video id

Getting the images

$thumb1 = file_get_contents("http://img.youtube.com/vi/$vidID/0.jpg");
$thumb2 = file_get_contents("http://img.youtube.com/vi/$vidID/1.jpg");
$thumb3 = file_get_contents("http://img.youtube.com/vi/$vidID/2.jpg");
$thumb4 = file_get_contents("http://img.youtube.com/vi/$vidID/3.jpg");
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜