0

我正在使用 facebook graph api 来获取我朋友的详细信息。我想在特定用户 ID 之后获取我朋友的详细信息,例如我有 4 个朋友

uid     name

1       Rob

2       Ryan

3       Bob

4       Angelina 

现在我想在用户 id 2 意味着用户 id 3 和 4 之后获取我朋友的详细信息,依此类推。

我使用了以下图形搜索查询

$url = 'https://graph.facebook.com/'.$user.'/friends?uid>=2';

但它似乎不起作用。我为此搜索了很多,但没有任何信息。有一个限制选项,但没有执行我想要的选项。对此有什么帮助吗?下面是我的完整代码

 function getFacebookFriends_more($criteria='') {
$name = $criteria['name'];
$load_me_more_id = $criteria['load_more_id'];

if($name=='') $name = 'me';

$url = 'https://graph.facebook.com/'.$name.'/friends?uid>='.$load_me_more_id.'fields=gender,name&access_token='.$this->getAccessToken();
$content = $this->getDataFromUrl($url);
$content = json_decode($content,true);

$users = $this->formatFacebookUsers_more($content,$load_me_more_id);

return $users;
  }

     function formatFacebookUsers_more($content,$load_me_more_id) {


   for($i=0; $i<count($content['data']); $i++) {

    $id = $content['data'][$i]['id'];
    $name = $content['data'][$i]['name'];
    $gender = $content['data'][$i]['gender'];
    $url = 'http://www.facebook.com/profile.php?id='.$id;
    $picture = 'https://graph.facebook.com/'.$id.'/picture?type=large'; //square, small, large


    $users[$i]['id'] = $id;
    $users[$i]['name'] = $name;
    $users[$i]['picture'] = $picture;
    $users[$i]['url'] = $url;
    $users[$i]['gender'] = $gender;

}
return $users;

}

4

1 回答 1

0

这是不可能的,因为该人不会将 facebook 中的每个用户都作为他的朋友。

(即)一个人的朋友列表中可能有user3但不是user4但有user5

您需要将所有朋友 UID 存储在一个数组中,然后对其进行迭代。

假设你有一个授权的会话

 $friends = $facebook->api("/me/friends");

现在迭代朋友数组

于 2013-06-28T23:37:41.820 回答