Petite astuce pour récuperer la ville d’origine avec l’API Facebook

Logo Facebook

Voici une petite astuce pour récupérer la ville d’origine d’une personne à travers l’API graph de Facebook dont la structure est la suivante:

    [hometown] => stdClass Object
        (
            [id] => 12345678....
            [name] => Mons, Hainaut, Belgium
        )

Vous constaterez que le nom de pays est repris avec la région et la ville dans une seule chaîne. Le code suivant devrait permettre de palier à cet inconvénient…

  $graph_url = "https://graph.facebook.com/me?access_token=" . $params['access_token'];
 
  $fbuser = json_decode(file_get_contents($graph_url));
 
  // Extraction
  $countryArray = split(",", $fbuser->hometown->name );
 
  if( sizeof($countryArray) == 2 || sizeof($countryArray) == 3 ){
    // Town, Country (2) or Town, State, Country (3)
    $countryName = end($countryArray); // Last element
  }

Petite explication: Après le split on vérifie la taille de l’array renvoyé. Si celui-ci contient deux éléments ou trois éléments (un seul élément correspondrait à un nom de ville) il est certain que le pays est repris dans le dernier élément que l’on récupére avec la fonction end. Le nom de pays est en Anglais donc pas besoin d’effectuer une vérification à ce niveau.

13 réflexions au sujet de « Petite astuce pour récuperer la ville d’origine avec l’API Facebook »

  1. Ping : Recap java, semaine 37, année 2011 | Blog de la rubrique java

Les commentaires sont fermés.