php - facebook php,你如何使用结果分页?

标签 php facebook facebook-graph-api

您好,我正在使用 Facebook PHP SDK (v.3.1.1)

我不明白如何使用结果分页 url。

我想得到我所有 friend 的列表,这是我的代码

$friends = $fb->api('/me/friends');
/*  
$friend == Array
(
    [data] => Array
    (
       ...
    ),
    [paging] => Array
    (
        [next] => https://graph.facebook.com/me/friends?method=GET&access_token=SOMETHING&limit=5000&offset=5000
    )
*/
if (!empty($friends['paging']['next']))
{
    $friends2 = $fb->api($friends['paging']['next']);
    //doesn't work
}

最佳答案

所有之前的回答都是有效的。

这是我使用 Graph API 获取所有“下一个”结果的方法:

请注意,我没有得到“以前”的结果。

function FB_GetUserTaggedPhotos($user_id, $fields="source,id") {
    $photos_data = array();
    $offset = 0;
    $limit = 500;

    $data = $GLOBALS["facebook"]->api("/$user_id/photos?limit=$limit&offset=$offset&fields=$fields",'GET');
    $photos_data = array_merge($photos_data, $data["data"]);

    while(in_array("paging", $data) && array_key_exists("next", $data["paging"])) {
        $offset += $limit;
        $data = $GLOBALS["facebook"]->api("/$user_id/photos?limit=$limit&offset=$offset&fields=$fields",'GET');
        $photos_data = array_merge($photos_data, $data["data"]);
    }

    return $photos_data;
}

您可以根据需要更改 $limit 的值,以便每次调用获得更少/更多数据。

关于php - facebook php,你如何使用结果分页?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8211177/

相关文章:

javascript - 在函数中返回 facebook javascript api sdk 响应

javascript - 如何通过 Javascript API 获取我的 Facebook 公开资料 URL

facebook - 使用某些 facebook 页面 id/用户名访问图形 api 时出现问题

PHP 到 XML - 替换/修剪特殊字符

PHP:如果MYSQL结果大于0,添加到数组吗?

php artisan 望远镜:install not publishing the assets in laravel

android - 新的 Facebook SDK 应用程序不可用 : The applicatioh you are trying to use is either no longer available or access is restricted

php - Eclipse PHP Xdebug 调试指针中是否有后退按钮?

ios - 带有发布权限回调的 Facebook iOS 3.1 sdk 登录

java - 有没有办法发现 REST API 的所有端点?