Как оказалось задача проста. В Youtube Api с использованием PHP все вызовы идут с использованием Zend Framewokr.
Вот собственно функция для поиска видео:
function searchAndPrint($searchTerms) { $yt = new Zend_Gdata_YouTube(); $query = $yt->newVideoQuery(); $query->setOrderBy('viewCount'); $query->setRacy('include'); $query->setVideoQuery($searchTerms); $videoFeed = $yt->getVideoFeed($query); printVideoFeed($videoFeed, 'Search results for: ' . $searchTerms); }
Где функция вывода на экран (printVideoFeed):
function printVideoFeed($videoFeed, $displayTitle = null) { $count = 1; if ($displayTitle === null) { $displayTitle = $videoFeed->title->text; } echo '' . $displayTitle . "
\n"; echo "\n"; foreach ($videoFeed as $videoEntry) { echo 'Entry # ' . $count . "\n"; printVideoEntry($videoEntry); echo "\n"; $count++; } echo "\n"; }
function printVideoEntry($videoEntry, $tabs = "") { // the videoEntry object contains many helper functions that access the underlying mediaGroup object echo $tabs . 'Video: ' . $videoEntry->getVideoTitle() . "\n"; echo $tabs . "\tDescription: " . $videoEntry->getVideoDescription() . "\n"; echo $tabs . "\tCategory: " . $videoEntry->getVideoCategory() . "\n"; echo $tabs . "\tTags: " . implode(", ", $videoEntry->getVideoTags()) . "\n"; echo $tabs . "\tWatch page: " . $videoEntry->getVideoWatchPageUrl() . "\n"; echo $tabs . "\tFlash Player Url: " . $videoEntry->getFlashPlayerUrl() . "\n"; echo $tabs . "\tDuration: " . $videoEntry->getVideoDuration() . "\n"; echo $tabs . "\tView count: " . $videoEntry->getVideoViewCount() . "\n"; echo $tabs . "\tRating: " . $videoEntry->getVideoRatingInfo() . "\n"; echo $tabs . "\tGeo Location: " . $videoEntry->getVideoGeoLocation() . "\n"; // see the paragraph above this function for more information on the 'mediaGroup' object // here we are using the mediaGroup object directly to its 'Mobile RSTP link' child foreach ($videoEntry->mediaGroup->content as $content) { if ($content->type === "video/3gpp") { echo $tabs . "\tMobile RTSP link: " . $content->url . "\n"; } } echo $tabs . "\tThumbnails:\n"; $videoThumbnails = $videoEntry->getVideoThumbnails(); foreach($videoThumbnails as $videoThumbnail) { echo $tabs . "\t\t" . $videoThumbnail['time'] . " - " . $videoThumbnail['url']; echo " height=" . $videoThumbnail['height']; echo " width=" . $videoThumbnail['width']; echo "\n"; } }
Вот собственно и все. А дальше уже оформляйте вывод как вам нравится:). Удачи
Комментариев нет:
Отправить комментарий