YouTube API v3通过PHP获取用户名的最新视频上传

我正在尝试获取用户最新视频/上传的列表.我试图了解这个新的v3 API,但我找不到任何正常运行的
PHP代码示例,甚至在专用的YouTube API网站上也没有.

我有一个YouTube用户名列表,我只想简单地获取一个包含视频ID,标题,缩略图URL等的最新视频列表.基本上是在foreach循环中.

有什么建议?

我有以下代码,我需要通过实际的YouTube用户名使其工作.

$url = 'https://www.googleapis.com/youtube/v3/channels?part=id&forUsername=ferrariworld&key=ZZZZZZZZ';
$json = json_decode(file_get_contents($url), true);
foreach ($json as $item){
echo $item[0]['id'];
echo $item[0]['title'];
}

最佳答案 将channels端点与forUsername属性一起使用(请参阅
endpoint的文档).

获取https://www.googleapis.com/youtube/v3/channels?part=id\u0026amp;forUsername={USERNAME}\u0026amp;key={YOUR_API_KEY}

它会给你这样的回应:

{
 "kind": "youtube#channelListResponse",
 "etag": "\"tbWC5XrSXxe1WOAx6MK9z4hHSU8/7Q8DJLb6b2hwYAXUQLI3ftt3R8U\"",
 "pageInfo": {
  "totalResults": 1,
  "resultsPerPage": 5
 },
 "items": [
  {

   "kind": "youtube#channel",
   "etag": "\"tbWC5XrSXxe1WOAx6MK9z4hHSU8/pDjr9xPn51KtRM3gbMOq2aHBIbY\"",
   "id": "UCr3LuetcEeidWiuhxaw4B2g"
  }
 ]
}

如果将JSON转换为数组,则可以在items [0] [‘id’]中找到该用户的通道ID.

至于编辑,您正在错误地访问JSON对象.你需要使用这样的东西.

if (array_key_exists('items', $json) && count($json['items']) === 1) {
    $item = $json['items'][0];

    $channelId = $item['id']; // The users channel ID.
}
点赞