Skip to main content

Get Youtube Video Thumbnail and Other Information with PHP and Youtube API

YouTube api version 2 provides all necessary information about videos on YouTube. If you want to create a video gallery or want to embed YouTube videos on your website then it can give you extra power.

In this post I am going to show you how to get YouTube videos information like video title, description, thumbnail and other information with YouTube JSON api and php.

Live Demo Download Source

Youtube API Function

youtube function receives YouTube video url as parameter. It automatically extracts video id from url and sends request to YouTube api server through curl.

/**
 * Youtube
 *
 * @version YouTube API V2
 * @param str youtube video url
 * @return object || void
 * @copyright w3bees.com
 */
function youtube($url)
{
  # get video id from url
  $urlQ = parse_url( $url, PHP_URL_QUERY );
  parse_str( $urlQ, $query );

  # YouTube api v2 url
  $apiURL = 'http://gdata.youtube.com/feeds/api/videos/'. $query['v'] .'?v=2&alt=jsonc';

  # curl options
  $options = array(
    CURLOPT_URL  => $apiURL,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_BINARYTRANSFER => true,
    CURLOPT_SSL_VERIFYPEER => false,
    CURLOPT_TIMEOUT => 5 );

  # connect api server through cURL
  $ch = curl_init();
  curl_setopt_array($ch, $options);
  # execute cURL
  $json = curl_exec($ch) or die( curl_error($ch) );
  # close cURL connect
  curl_close($ch);

  # decode json encoded data
  if ($data = json_decode($json))
    return (object) $data->data;
}

Usages

youtube function returns all information as object.

# call youtube api function
$youtube = youtube('http://www.youtube.com/watch?v=xxxxxxxxxx');
# title
$youtube->title;
# duration in seconds
$youtube->duration;
#video description
$youtube->description;
# thumbnail url High Quality
$youtube->thumbnail->hqDefault;
# thumbnail url Small Quality
$youtube->thumbnail->sqDefault;
# video rating out of five
$youtube->rating;
# total likes
$youtube->likeCount;
# video category
$youtube->category;
# total view
$youtube->viewCount;
# time upload time
$youtube->uploaded;

Comments

  1. thx man , i will use it

    ReplyDelete
  2. i m getting Plain youtube video description..from $youtube->description;
    how to get description same like in youtube?

    ReplyDelete
  3. How to get other websites videos thumbnail images?

    ReplyDelete
  4. This comment has been removed by a blog administrator.

    ReplyDelete
  5. Dapatkan disini , karena Obat Pelangsing slimming Capsule Di Apotik belum tersedia , karena slimming capsule tidak di jual di sembarang temapat termasuk di apotik pun tujuannya untuk menjaga ke aslian produk tersebut, karena sekarang banyak perusahaan yang meniru produk produk herbal sehingga herbal yang asli khasiatnya bisa di rusak oleh produk yang palsu. Untuk itu hati hati dengan slimming capsule

    and obat vig power capsule

    ReplyDelete
  6. Live demo is not working, Can you please check?

    ReplyDelete
  7. very interesting blog.This will help lot of user to update their knowledge.Thanks for sharing.

    White Label Website Builder

    ReplyDelete
  8. Thanks for your sharing. Hope you can contribute more quality posts to this page. Thank you!
    lucky patcher

    ReplyDelete
  9. It's cool that you report such things. Melinda

    ReplyDelete
  10. YouTube Analytics comes in when you have started using YouTube to upload and share videos and when you started to wonder who are watching your videos and how do they can get more views and better engagement. When you build a dashing YouTube channel, the requirement is, you must understand who your audience is and how do they engage with your videos. As luck would have it, YouTube Analytics is to the rescue to tell you a lot more about your audience, what do they like, and what kind of content you should create to become successful. vues de youtube

    ReplyDelete

Post a Comment

Popular posts from this blog

Multiple File Upload with PHP

Sometimes we need to allow our users to upload multiple file upload. On my previous post I was shown the basic of simple file upload with PHP. Today I am going to show you how to allow users to upload multiple files. It is almost similar like simple file upload but we need to do some modification with html markup and php code. multiple attribute is needed to add on the html markup. Major web browsers like Firefox, Chrome, Safari and IE 9+ support this attribute. Now I am going to show you how to upload multiple file with PHP and basic HTML form.

Live Comment System with jQuery Ajax PHP and MySQL

Recently I have been made a post that focused on how to submit form without page refreshing. That post shows the basic functionality of using jQuery Ajax. On the same follow this post will describe how we can create a comment system to post an instant comment without page refreshing. Let's start...

Resize Image While Uploading with PHP

On my previous post I was shown an example how to upload file with php and html. It was based on php simple image upload functionality. Today I am going to show you little bit advance of image uploading. Suppose if you run a website and want to allow users to upload image files than you need to think little bit about server's space and bandwidth. For this purpose you need to do some optimization with image files. Image resize while uploading is one of them. All major website do it in the same way. If a user uploads a 5mb image file they resize it in different sizes and store on there server. It helps them to seed up there website and reduce there budget. Now take a look, how we can do it ourself.