2013-01-02 136 views
0

如何在我們的Facebook好友列表中按姓名搜索我們的朋友?如何使用Graph API在我們的朋友列表中搜索FB朋友

在我的程序中,我列出了所有使用api的朋友在一個盒子裏。在那個盒子裏,有一個搜索我們朋友的字段搜索。我想用Graph api搜索我的朋友。但我不知道該怎麼做。

回答

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 
     } 
    } 
}); 
相關問題