使用Youtube API,我为自己的需求创建了类。(与Zend FW配合使用)
class youtube extends html {
var $yt, $user;
public function __construct($user) {
require_once 'Zend/Loader.php';
Zend_Loader::loadClass('Zend_Gdata_YouTube');
$this->yt = new Zend_Gdata_YouTube();
$this->yt->setMajorProtocolVersion(2);
Zend_Loader::loadClass('Zend_Gdata_AuthSub');
Zend_Loader::loadClass('Zend_Gdata_ClientLogin');
$this->yt->getHttpClient()->setConfig(array('timeout' => 180));
$this->user = $user;
}
}
问题是,当我使用时
$this->yt->getuserUploads($this->user)
在其他类方法上,它会得到ALL视频。我想获得$user
的最后3个视频。如何做到这一点?
我现在时间真的很紧,否则我会尝试使用你的代码。如果你不能解决问题,或者没有人用你的代码给出答案,这可能会有所帮助。
我为那些想显示特定用户上传到Youtube的最新视频的缩略图的人制定了一个快速而肮脏的解决方案——我编码了一个简单的控制器动作和视图,它将显示一个视频缩略图,这是视频本身的链接。
通过更改,可以很容易地调整该示例以显示特定数量的视频
if($i==1) break;
然而,可能有比我做的方式更优雅的方式——正如我所说,回答一个问题既快又脏。
我使用了Zend_Feed_Reader类,而不是Zend_Gdata_YouTube类。在短期内,这可能会有所帮助。
祝你好运,如果这有帮助,请告诉我。
祝你一切顺利,戴夫:-D
链接到我的示例的问题
看看:
$query = $yt->newVideoQuery();
$query->maxResults = 3;
$query->orderBy = 'published';
$query->author = 'ThisIsHorosho';
$query->startIndex = 1;
$videoFeed = $yt->getUserUploads(null,$query);
foreach($videoFeed as $videoEntry)
{
echo $videoEntry->getVideoWatchPageUrl() . PHP_EOL;
}