Facebook の友達リストで友達を名前で検索するにはどうすればよいですか?
私のプログラムでは、APIを使用してすべての友達をボックスにリストしています。そのボックスには、友達を検索するための検索フィールドが 1 つあります。Graph api を使用して友達を検索したい。しかし、私はそれを行う方法がわかりません。
Facebook の友達リストで友達を名前で検索するにはどうすればよいですか?
私のプログラムでは、APIを使用してすべての友達をボックスにリストしています。そのボックスには、友達を検索するための検索フィールドが 1 つあります。Graph api を使用して友達を検索したい。しかし、私はそれを行う方法がわかりません。
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
手動でアクセスするのと同じです。
$target
2.検索フィールドからの文字列であると仮定します
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
}
}
});