0

我正在使用 Facebook PHP API 搜索用户,如下所示:

$fb_friends = $this->facebook->api('/search?q=polo&type=user&fields=id,name,first_name,last_name,gender,location,picture.width(215)');

是否可以让返回的用户先按好友排序?如果没有,我如何使用 API ('/me/friends/') 检索我的朋友,但只能检索与我的查询字符串 'polo' 匹配的朋友?如果没有 FQL,这可能吗?

4

1 回答 1

1

FQL 是一种以您想要的方式获得结果的便捷方式。获取朋友然后按姓氏排序的示例如下:

$fql = "{\"q1\":\"SELECT uid2 FROM friend WHERE uid1=me()\",";
$fql .= "\"q2\":\"SELECT name, uid FROM user WHERE uid in (SELECT uid2 FROM #q1) ORDER BY last_name ASC\"}";
$fqlurl = "https://graph.facebook.com/fql?q=".urlencode($fql)."&access_token=".$fbtoken;
$fqr = file_get_contents($fqlurl);
$fq = json_decode($fqr, true);
$friends = $fq['data'][1]['fql_result_set'];

如果您想了解有关 FQL 的更多信息,Facebook 的FQL 文档是一个不错的起点。虽然他们在解释查询语法方面做得很好,但他们的示例代码只是向你抛出了很多代码,虽然没有真正分解它,但我上面所说的确实是它的本质。让我知道这是否是您正在寻找的,如果您有任何问题:)

于 2013-04-18T14:03:23.690 回答