Youtube api 尝试从ListChannel解析topicDetails时出现奇怪的错误

Youtube api 尝试从ListChannel解析topicDetails时出现奇怪的错误,youtube-api,youtube-data-api,Youtube Api,Youtube Data Api,使用youtube数据api时,从列表通道返回的json将解析统计信息,但不会解析topicDetails。下面是我返回数据的基本代码 $part ='topicDetails,statistics'; $response = $service->channels->listChannels($part,$channel_id); $topic = $response->items[0]; return $topic; 这是回报 [statistics] =>

使用youtube数据api时,从列表通道返回的json将解析统计信息,但不会解析topicDetails。下面是我返回数据的基本代码

$part ='topicDetails,statistics';    
$response = $service->channels->listChannels($part,$channel_id); 
$topic = $response->items[0];
return $topic;
这是回报

[statistics] => Array
            (
                [viewCount] => 230769010
                [commentCount] => 92
                [subscriberCount] => 1540335
                [hiddenSubscriberCount] => 
                [videoCount] => 526
            )

        [topicDetails] => Array
            (
                [topicIds] => Array
                    (
                        [0] => /m/02vxn
                        [1] => /m/02jjt
                        [2] => /m/019_rr
                        [3] => /m/03glg
                        [4] => /m/02vxn
                    )
下面的代码解析json以获取统计信息,效果良好

$response = $service->channels->listChannels($part,$channel_id); 
$topic = $response->items[0]->statistics;
return $topic;
这就是它变得奇怪的地方。下面的代码应该解析topicDetails,但有错误

$response = $service->channels->listChannels($part,$channel_id); 
$topic = $response->items[0]->topicDetails;
return $topic;
这是我在尝试解析topicDetails时遇到的错误


非常感谢您的任何想法或帮助。几天前,同样的代码起作用了。也许youtube api改变了。谢谢

我们现在遇到了同样的问题

编辑***解决方案

我相信youtube将api调用返回的对象更改为包含受保护的['modelData',因此必须对其进行索引

将返回响应设置为

$response['items'][0];
然后在文件中调用函数,将任何变量设置为响应:

$channel_info=youtubeFunctionName(params);
然后您现在必须解析索引['modelData'],以获取主题详细信息

$channel_info=$channel_info['modelData']['topicDetails']['topicIds']
现在没有意义的是,为什么您能够在没有索引['modelData']的情况下提取['statistics']。希望youtube提供关于这些变化的文档