如何在Facebook php中显示用户朋友列表?

时间:2012-03-27 03:20:21

标签: php facebook facebook-graph-api facebook-apps facebook-friends

我正在尝试使用以下代码显示用户的朋友:

 $friends=$facebook->api('/me/friends');
 foreach($friends as $key=>$value)
 {
   foreach($value as $fkey=>$fvalue)
    {
     echo $fvalue->name;
    }
 }

但我没有得到用户的朋友名字。我是Facebook应用程序开发的新手,所以请帮我解决这个问题。另外,我如何使用Graph API显示用户的朋友。

2 个答案:

答案 0 :(得分:2)

这是$facebook->api('/me/friends')给出的数据格式。

Array
(
    [data] => Array
        (   [0] => Array
                (
                    [name] => abc
                    [id] => 503099471
                )    
            [1] => Array
                (
                    [name] => dff
                    [id] => 565687398
                )
     )
    [paging] => Array
        (
            [next] => https://graph.facebook.com/me/friends?method=GET&access_token=AAAEYSMWjFY4BAG4QCxRU44BTcBwMajX4IrAVqhYzObAGVsDyuyhAsFf9MamBRaFD2eQhZBRwty3YgTbPbiAzfFlftPDjiTGZC06t5VQgZDZD&limit=5000&offset=5000&__after_id=100003479505340
        )
)

使用此代码在facebook php中显示用户朋友列表:

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

     foreach($friends['data'] as $key=>$value)
     {
            echo $value['name'];
     }

答案 1 :(得分:1)

您的API调用很好。但返回值的结构与您的想法不同。 Facebook会为您调用返回一系列ID和名称。所以可以按如下方式访问它:

$ret=$facebook->api('/me/friends');
$friends=$ret['data'];
for($i=0;$i<count($friends);$i++) {
      $friend=$friends[$i];
  echo "{$friend['id']}: {$friend['name']}\n";
}