Это полный и полный взлом, у меня была точно такая же проблема, поэтому я пошел в класс по Zend / Gdata / YouTube / PlaylistListEntry.php в строке 229 и прокомментировал оператор if else.
/**
* Returns the Id relating to the playlist.
*
* @throws Zend_Gdata_App_VersionException
* @return Zend_Gdata_YouTube_Extension_PlaylistId The id of this playlist.
*/
public function getPlaylistId()
{
/*if (($this->getMajorProtocolVersion() == null) ||
($this->getMajorProtocolVersion() == 1)) {
require_once 'Zend/Gdata/App/VersionException.php';
throw new Zend_Gdata_App_VersionException('The yt:playlistId ' .
'element is not supported in versions earlier than 2.');
} else {*/
return $this->_playlistId;
//}
}
Я ЛЮБЛЮ, чтобы кто-то показал нам, как исправить это правильно, но это сделало это так
function printPlaylistListEntry($playlistListEntry, $showPlaylistContents = false)
{
$this->yt->setMajorProtocolVersion(2);
echo '<br>Title: ' . $playlistListEntry->title->text . "\n";
echo '<br>Description: ' . $playlistListEntry->description->text . "\n";
echo '<br>playlistId: ' . $playlistListEntry->playlistId->text . "\n";
... (из youtube v2 php api).
вернет плейлист.
Название: therighttitle
Описание: Правильное описание
идентификатор списка воспроизведения: therightplaylistId
edit: я думаю, что это может быть лучшим решением:
if ($this->getMajorProtocolVersion() < 2) {
require_once 'Zend/Gdata/App/VersionException.php';
throw new Zend_Gdata_App_VersionException('The yt:playlistId ' .
'element is not supported in versions earlier than 2.');
} else {
return $this->_playlistId;
}
замените функцию getPlaylistId () на это, следуя логике предыдущей функции getDescription и сделав ее менее хакерской. Опять же, полностью открыт для критики о том, почему это или не является хорошей идеей от зендеров.