首页 文章

Foreach循环PHP错误

提问于
浏览
0

我想使用foreach循环“textDisplay”,但我不确定我的PHP代码的哪一部分是错误的,它给了我一个“试图获取非对象的属性”错误

XML

<pre>
{
"kind": "youtube#commentThreadListResponse",
"etag": "\"m2yskBQFythfE4irbTIeOgYYfBU/o6YjewN3UppKqc9x-ZYYa5xYhA8\"",
"pageInfo": {
    "totalResults": 9,
    "resultsPerPage": 20
},
"items": [
    {
        "kind": "youtube#commentThread",
        "etag": "\"m2yskBQFythfE4irbTIeOgYYfBU/uE9QsmedbKmEauRAmmwW18vNQa8\"",
        "id": "z12qxfxr2onpy1b5l04cdfzrgwabir0q4bo",
        "snippet": {
            "videoId": "Au87oAJ2jeE",
            "topLevelComment": {
                "kind": "youtube#comment",
                "etag": "\"m2yskBQFythfE4irbTIeOgYYfBU/EUV0UwLw788gwYsvyDO2xMRjG8w\"",
                "id": "z12qxfxr2onpy1b5l04cdfzrgwabir0q4bo",
                "snippet": {
                    "authorDisplayName": "Randy Taschner",
                    "authorProfileImageUrl": "https://yt3.ggpht.com/--vE0X3_vDCs/AAAAAAAAAAI/AAAAAAAAAAA/P6kgycrPEZw/s28-c-k-no-mo-rj-c0xffffff/photo.jpg",
                    "authorChannelUrl": "http://www.youtube.com/channel/UCTRuBHRb4BRFcob-hMj6NnQ",
                    "authorChannelId": {"value": "UCTRuBHRb4BRFcob-hMj6NnQ"},
                    "videoId": "Au87oAJ2jeE",
                    "textDisplay": "Thank you Dan and Envato for creating this video!",
                    "textOriginal": "Thank you Dan and Envato for creating this video!",
                    "canRate": true,
                    "viewerRating": "none",
                    "likeCount": 1,
                    "publishedAt": "2015-08-16T05:02:25.000Z",
                    "updatedAt": "2015-08-16T05:02:25.000Z"
                }
            },
                "canReply": true,
                "totalReplyCount": 1,
                "isPublic": true
        }
    }
]

}

我的PHP代码

$json = file_get_contents('https://www.googleapis.com/youtube/v3/commentThreads?part=snippet%2Creplies&videoId='.$videoid.'&key='.$apikey);
$ytdata = json_decode($json);
foreach($ytdata->items[0]->snippet->topLevelComment->snippet->textDisplay as $hit){
    echo $hit;
}

谢谢

1 回答

  • 1

    $ytdata->items[0]->snippet->topLevelComment->snippet->textDisplay 不是数组 - 它是一个字符串 .

    也许你打算循环这些项目?

    foreach ($ytdata->items as $item) {
        echo $item->snippet->topLevelComment->snippet->textDisplay;
    }
    

相关问题