Comment obtenir un Facebook de l'utilisateur actuel du pays?

Le Facebook Graph API fournit un utilisateur emplacement actuel en deux formats: le nom et l'identité. L'ID peut être quelque chose comme 104022926303756. Le nom peut être quelque chose comme Palo Alto, Californie ou Beijing, en Chine. À partir de ces deux champs, comment puis-je extraire le pays? Toutes les endroits Américains sont dans la forme [City], [State] alors que tous les non-Américains emplacements sont en forme [City], [Country]. Puis-je code quelque chose de moins hacky que:

$states = array(
 'Alabama'
 'Alaska',
 'Arizona',
 //...
);

$country = 'USA';
if (!in_array($locationName, $states)) {
    preg_match('#, ([a-z]+$)#i', $locationName, $match);
    $country = $match[1];
}

OriginalL'auteur JoJo | 2012-03-05