如何使用php Youtube Api获取所有用户订阅?

如何使用php Youtube Api获取所有用户订阅?,php,api,youtube,youtube-api,Php,Api,Youtube,Youtube Api,我现在有点迷路了。我想使用Youtube Api获取所有登录用户的订阅,并将其显示为列表,但我完全迷路了。我正在考虑使用批处理请求,但我甚至不知道如何开始实现它。有什么建议吗?更新 使用。它不需要任何身份验证 使用 1) 从以下站点下载Zend Framework 1.12.3 Minimal 2) 解压缩zip。将文件夹Zend复制到您的项目文件夹(或仅Zend\Gdata) 3) 包括到您的index.php(例如)类Zend_Gdata_YouTube: <?php requi

我现在有点迷路了。我想使用Youtube Api获取所有登录用户的订阅,并将其显示为列表,但我完全迷路了。我正在考虑使用批处理请求,但我甚至不知道如何开始实现它。有什么建议吗?

更新 使用。它不需要任何身份验证

使用

1) 从以下站点下载Zend Framework 1.12.3 Minimal

2) 解压缩
zip
。将文件夹
Zend
复制到您的项目文件夹(或仅
Zend\Gdata

3) 包括到您的
index.php
(例如)类
Zend_Gdata_YouTube

<?php
   require_once 'Zend/Gdata/YouTube.php';

   $username = 'USERNAME'; // set need YouTube user

   $yt = new Zend_Gdata_YouTube();
   $subscriptionFeed = $yt->getSubscriptionFeed($username);

   foreach ($subscriptionFeed as $subscriptionEntry) {
      echo $subscriptionEntry->title->text . "\n";
   }

?>
而不是使用:

$userID = 'YouTubeUsedId';
$url_api = 'https://gdata.youtube.com/feeds/api/users/'.$userID.'/subscriptions?v=2';
$subs_content = file_get_contents($url_api);
通过订阅获取
xml
后,使用
DomDocument
(例如)&获取用户列表。根据需要获取标签

编辑2(注意)

默认情况下,YouTube只返回视频提要的前25行。要进行偏移,请使用“下一步”:

$url='https://gdata.youtube.com/feeds/api/users/'.$userID.'/subscriptions?start-index=25
                                                                    &max-results=25
                                                                    &v=2';
开始索引
从索引开始定义

max results
define offest(注意:max value=50)


查看更多内容

老实说,如果可能的话,我宁愿使用Youtube api。我曾试图在php api中处理“my_uploads”示例,但在api站点上找不到任何东西来告诉我如何将其更改为检索订阅者,而不是uploads@looserlf我更新了答案。不过,我建议您下载class
Zend_Gdata_YouTube
。很抱歉给你添麻烦,但是你的编辑并没有让我看得更清楚。我以前从未使用过zend,我仍然有点困惑。我怎么开始?我必须先包含文件或引用任何内容吗?@looserlf请看。我希望你能理解。很简单,太好了!我终于成功了,但还有一件小事。当我尝试加载我自己的订阅者作为测试时,代码只加载前25个频道,而实际上我有更多的频道。有没有办法绕过这个限制,或者这与YouTube有关?
$url='https://gdata.youtube.com/feeds/api/users/'.$userID.'/subscriptions?start-index=25
                                                                    &max-results=25
                                                                    &v=2';