如何在我们的Facebook好友列表中按姓名搜索我们的朋友?
在我的程序中,我在一个盒子中列出了所有使用api的朋友。在那个框中,有一个字段搜索我们的朋友。我想使用Graph api搜索我的朋友。但我不知道该怎么做。
答案 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
}
}
});