2010-12-07 23 views
4

Comment puis-je obtenir le nombre total d'amis utilisant l'API PHP de Facebook?Comment puis-je obtenir le nombre total d'amis utilisant l'API Facebook et PHP?

Ceci est mon code à ce jour:

<?php require_once 'facebook.php'; 
    $appapikey = 'x'; 
    $appsecret = 'x'; 
    $facebook = new Facebook($appapikey, $appsecret); 
    $user_id = $facebook->getuser(); $friends = ???; 
+0

Quel code avez-vous jusqu'à présent? –

+0

getuser(); $ amis = ???; – conqrr

+0

accepter comme réponse si cela aide –

Répondre

3

Possible en double: Return List of Current Facebook Users Friends

peut vouloir consulter la Documentation

+1

Il ressemble plus à http://stackoverflow.com/questions/3527518/how-can-i-count-the-total-friends-of-a-facebook-user-by- uid –

+0

Ceci n'est pas une réponse. Et l'OP ne demande pas une liste d'amis, mais simplement le nombre d'amis. –

3

Une fois que vous (ou votre utilisateur) a autorisé votre application , vous pouvez accéder à un groupe d'amis JSON en recherchant https://graph.facebook.com/<user_id>/friends. La longueur du tableau est le nombre d'amis de l'utilisateur.

+0

Garçon, ça doit être un long tableau pour les noisettes qui aiment tout ce qui est en vue. –

+0

en utilisant cet utilisateur api ne peut obtenir une liste de ses propres amis. –

4

Essayez cette

$uid = $facebook->getUser(); 
$fbme= $facebook->api('/me'); 
echo "Welcome ".$fbme['name']; 
$frnz= $facebook->api('/me/friends'); 
echo "< br />Total Number of friends you have:".sizeof($frnz['data'])."< br/>"; 
3

Ce tableau sizeof thingy ne fonctionne pas, parce que Facebook a un nombre limité d'amis pour montrer. à la place, vous devez utiliser la fonctionnalité de pagination de la réponse FB App. Aussi, vous pouvez limiter le nombre d'amis que vous souhaitez récupérer et placer ce genre de demande dans une boucle:

$facebook->api('/me/friends?limit=$limit&offset=$offset'); 

il vous suffit de le placer dans un certain temps et aller jusqu'à aucun ami récupérés. dans chaque boucle, augmentez $ offset. Cela devrait faire.