如何在新的Facebook PHP SDK 4中使用分页

时间:2015-01-30 07:08:06

标签: php facebook facebook-graph-api facebook-php-sdk

我正在使用新的Facebook PHP SDK。我试图获取用户喜欢的所有页面的名称。但它只返回了我的25个。据我所知,如果我必须得到所有这些,那么我将不得不使用“graphObject”返回的“分页”中的“下一个链接”。

但我不知道如何使用它。如果我错了,你可以指出我该怎么办?

2 个答案:

答案 0 :(得分:7)

我在php中这样做以获得所有喜欢:

public function getLikes () {

    $likes = array();

    // Custom method! Get the session however you like
    $session = $this->getSession();

    $request = new FacebookRequest(
        $session,
        'GET',
        '/me/likes'
    );

    do {
        $response = $request->execute();
        $graphObject = $response->getGraphObject();
        $some_likes = $graphObject->getProperty('data')->asArray();
        $likes = array_merge($likes, $some_likes);
    } while ($request = $response->getRequestForNextPage());

    return $likes;
}

如您所见,getRequestForNextPage()方法是关键。

答案 1 :(得分:0)

我对getRequestForNextPage()方法有点奇怪, 我现在正试图解决我的问题大约8个小时。 问题是,这种方法返回不同的数据,然后只需点击" next"链接在浏览器中打开时,它只是将日期移动了大约两天,因此我希望得到的许多数据都是重复的,甚至更多,下一页的请求在此之后开始循环,所以我再次获取数据第一次请求,我的代码几乎与上面的代码相同。其他人有这个问题吗?