0

我正在使用以下内容从 FB 中检索评论:

$url = urlencode("http://*****.com/pages/view?id=2153&item=Mens-Collection-Shoes");
$request_url ="https://graph.facebook.com/comments/?ids=" . $url;
$requests = file_get_contents($request_url);

当我print_r($requests);得到以下信息但无法确定如何使用 foreach 循环对其进行格式化时:

{
    "http:\/\/*****.com\/pages\/view?id=2153&item=Mens-Collection-Shoes": {
        "comments": {
            "data": [{
                "id": "123456",
                    "from": {
                    "name": "Laurelle",
                        "id": "123456"
                },
                    "message": "I love these",
                    "can_remove": false,
                    "created_time": "2012-11-20T10:20:16+0000",
                    "like_count": 0,
                    "user_likes": false
            } {
                "id": "123456",
                    "from": {
                    "name": "Dan",
                        "id": "123456"
                },
                    "message": "I know, just stunning!",
                    "can_remove": false,
                    "created_time": "2012-11-20T14:24:15+0000",
                    "like_count": 0,
                    "user_likes": false
            }],
                "paging": {
                "next": "https:\/\/graph.facebook.com\/*****\/comments?limit=25&offset=25&__after_id=*****"
            }
        }
    }
}

我试图得到:

data->from->id
data->from->name
data->message
data->created_time

我试过了:

$fb_response = json_decode($requests);

foreach($fb_response->data as $item){
echo $item->from->id . '<br />';
echo $item->from->name . '<br />';
echo $item->message . '<br />';
echo $item->created_time . '<br /><br />';
}

但没有运气

4

1 回答 1

3

我想你正在寻找:

$originalUrl = "http://*****.com/pages/view?id=2153&item=Mens-Collection-Shoes";
$url = urlencode($originalUrl);
...
foreach($fb_response->$originalUrl->comments->data as $item) {

data不是直接在 JSON 文档中的属性名称;它在http://*****.com/pages/view?id=2153&item=Mens-Collection-Shoes和之下comments

于 2012-11-20T15:00:40.487 回答