如何使用Graph api在我们的朋友列表中搜索FB好友

时间:2013-01-02 07:37:40

标签: php facebook facebook-graph-api search

如何在我们的Facebook好友列表中按姓名搜索我们的朋友?

在我的程序中,我在一个盒子中列出了所有使用api的朋友。在那个框中,有一个字段搜索我们的朋友。我想使用Graph api搜索我的朋友。但我不知道该怎么做。

1 个答案:

答案 0 :(得分:2)

FB没有为搜索特定用户的朋友提供任何API,但很容易自己做。我建议你使用facebook-php-sdk

1

require 'facebook-php-sdk/src/facebook.php';

$facebook = new Facebook(array(
  'appId'  => 'YOUR_APP_ID',
  'secret' => 'YOUR_APP_SECRET',
));

$user = $facebook->getUser();
if ($user) {
    $friends = $facebook->api('/me/friends');
    // DO SOMETHING ELSE
}

从现在开始,$friends是用户朋友的列表。它等于手动访问https://graph.facebook.com/me/friends?access_token=USER_TOKEN

2。 假设$target是搜索字段中的字符串

foreach ($friends["data"] as $value) {
    if (strpos($value["name"], $target) !== false) {
        // DO SOMETHING YOU WANT TO
    }
}     

顺便说一句,使用javascript搜索客户端的朋友可能比使用php更有效率和动态。就个人而言,我会在前端做到这一点。假设您使用的是jQuery,target是搜索字段中的字符串。

var url = 'https://graph.facebook.com/me/friends?access_token=USER_TOKEN'
$.getJSON(url, function(data) {
    friends = data['data'];

    for(i in friends){ 
        if (friends[i]['name'].search(target) != -1){
            // DO SOMETHING YOU WANT TO
        }
    }
});
相关问题