我正在使用以下 PHP 代码从用户频道获取最新视频,
$feedURL = 'http://gdata.youtube.com/feeds/api/users/USER-ID/uploads?max-results=50';
$sxml = simplexml_load_file($feedURL);
有什么方法可以调用 Youtube API 并在单个 API 调用中从不同的用户频道获取视频。并在页面上按 desc 顺序列出视频。
我正在使用以下 PHP 代码从用户频道获取最新视频,
$feedURL = 'http://gdata.youtube.com/feeds/api/users/USER-ID/uploads?max-results=50';
$sxml = simplexml_load_file($feedURL);
有什么方法可以调用 Youtube API 并在单个 API 调用中从不同的用户频道获取视频。并在页面上按 desc 顺序列出视频。
对不起,你的答案不是很清楚。
首先通过调用 json 格式的 api 获取上传的视频总数:
http://gdata.youtube.com/feeds/api/users/LinusTechTips/uploads?v=2&alt=jsonc
利用:
$json = json_decode($jsonString);
print($json->data->totalItems . "\n");
获得观看次数,然后您可以计算其余部分!
$totalItems = $json->data->totalItems;
$maxResults = 50
$xmlResults = array();
for($i = $maxResults > $totalItems-50; $i+$maxResults) {
$xmlResults[] = simplexml_load_file(
'http://gdata.youtube.com/feeds/api/users/LinusTechTips/uploads?max-results=' . $i
);
}
要清楚;这未经测试。所以我不确定它是否有效;但这是这样做的方法。
注意:XML 比 json 慢很多,我强烈建议你使用 json 格式!
您可以尝试使用用户名/ID 设置一个数组并 foreach 它们。例如:
$usernames = array(
'xeonnnnn',
'LinusTechTips'
);
$xmlResults = null;
foreach ($usernames as $user) {
$xmlResults[] = simplexml_load_file(
'http://gdata.youtube.com/feeds/api/users/' . $user .'/uploads?max-results=50'
);
}