protected static function getYouTubeVideoData_API_v3($videoid, &$blankArray, $getinfomethod, $api_key) { //Use API v3.0 /* $client_secret = YouTubeGalleryMisc::getSettingValue('youtube_api_client_secret'); // Call set_include_path() as needed to point to your client library. require_once 'Google/Client.php'; require_once 'Google/Service/YouTube.php'; if(!isset($_SESSION)) { session_start(); } $OAUTH2_CLIENT_ID = $client_id; $OAUTH2_CLIENT_SECRET = $client_secret; $client = new Google_Client(); $client->setClientId($OAUTH2_CLIENT_ID); $client->setClientSecret($OAUTH2_CLIENT_SECRET); $client->setScopes('https://www.googleapis.com/auth/youtube'); $redirect = filter_var('http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'],FILTER_SANITIZE_URL); $client->setRedirectUri($redirect); // Define an object that will be used to make all API requests. $youtube = new Google_Service_YouTube($client); */ if (phpversion() < 5) { return "Update to PHP 5+"; } try { $part = 'id,snippet,contentDetails,statistics'; //,status $url = 'https://www.googleapis.com/youtube/v3/videos?id=' . $videoid . '&part=' . $part . '&key=' . $api_key; $blankArray['datalink'] = $url; $htmlcode = YouTubeGalleryMisc::getURLData($url); if (($getinfomethod == 'js' or $getinfomethod == 'jsmanual') and $htmlcode == '') { return ''; } $j = json_decode($htmlcode); if (!$j) { //print_r($j); //die; return 'Connection Error'; } $items = $j->items; foreach ($items as $item) { if ($item->kind == 'youtube#video' and $item->id == $videoid) { $snippet = $item->snippet; $blankArray['title'] = $snippet->title; $blankArray['description'] = $snippet->description; $blankArray['publisheddate'] = $snippet->publishedAt; $t = $snippet->thumbnails; $images = array(); if (isset($t->default)) { $images[] = $t->default->url; } if (isset($t->medium)) { $images[] = $t->medium->url; } if (isset($t->high)) { $images[] = $t->high->url; } if (isset($t->standard)) { $images[] = $t->standard->url; } if (isset($t->maxres)) { $images[] = $t->maxres->url; } $blankArray['imageurl'] = implode(',', $images); $blankArray['channel_title'] = $snippet->channelTitle; $d = $item->contentDetails->duration; $blankArray['duration'] = VideoSource_YouTube::convert_duration($d); $blankArray['statistics_favoriteCount'] = $item->statistics->favoriteCount; $blankArray['statistics_viewCount'] = $item->statistics->viewCount; $blankArray['likes'] = $item->statistics->likeCount; $blankArray['dislikes'] = $item->statistics->dislikeCount; $blankArray['commentcount'] = $item->statistics->commentCount; if (isset($snippet->tags)) { $blankArray['keywords'] = $snippet->tags; } //print_r($blankArray); //die; return ''; } } } catch (Exception $e) { return 'Cannot get youtube video data.'; } return ''; }