Получение разных видео идентификаторов YouTube - PullRequest
0 голосов
/ 01 февраля 2012

API code.google.com для PHP

Я использовал эту функцию: функция printVideoEntry ($ videoEntry) и получил

Идентификатор видео: XXXXXXXXXXXXXXXXXXXXXXXXX
Страница просмотра:http://www.youtube.com/watch?v=YYYYYYYYYYYYYY&feature=youtube_gdata_player
URL-адрес Flash Player: http://www.youtube.com/v/YYYYYYYYYYYYY?version=3&f=playlists&app=youtube_gdata

Если я передаю указанный идентификатор видео, это выдает мне ошибку:

Неполученное исключение 'Zend_Gdata_App_HttpException' с сообщением 'Ожидаемый код ответа 200, получено 400 Invalid id '

И если я пропущу YYYYYYYYYYYYYYYYY со страницы просмотра и URL Flash Player [оба одинаковые], я получаю то, что мне нужно.

Помощь очень ценится, заранее спасибо.

Использование этой функции для получения видеозаписей

function printVideoEntry($videoEntry) {
  echo "<div onclick=\"ytvbp.presentVideo('".$videoEntry->getVideoId()."')\" >";
  echo 'Video: '.$videoEntry->getVideoTitle() . "<br>";
  echo "</div>";
  echo 'Video ID: ' . $videoEntry->getVideoId() . "<br>";
  echo 'Watch page: ' . $videoEntry->getVideoWatchPageUrl() . "<br>";
  echo 'Flash Player Url: ' . $videoEntry->getFlashPlayerUrl() . "<br>";
} 

Я вызываю функцию печати видео с

 function getAndPrintPlaylistVideoFeed($playlistListEntry) {
    $yt = new Zend_Gdata_YouTube();
    $playlistVideoFeed =  $yt->getPlaylistVideoFeed($playlistListEntry->getPlaylistVideoFeedUrl());
    foreach ($playlistVideoFeed as $playlistVideoEntry) {
    $getandprintplaylistvideofeed_array[] = printVideoEntry($playlistVideoEntry);
    }

1 Ответ

0 голосов
/ 01 февраля 2012

$videoEntry должен быть VideoEntry -объектом, который вы можете получить на основании идентификатора:

$videoEntry = $yt->getVideoEntry('the0KZLEacs');

Тогда вы можете вызвать функцию и установить ее в качестве параметра:

printVideoEntry($videoEntry);

Или вы можете изменить первые строки printVideoEntry:

function printVideoEntry($videoId) {
  $videoEntry = $yt->getVideoEntry('the0KZLEacs');
  //...
}

Проверьте документы , чтобы увидеть, какую информацию вы можете извлечь из VideoEntry =)

...