我是PHP SDK Facebook的新手,所以很抱歉,如果这个问题很愚蠢。
所以,我有这个代码
SELECT name FROM user
WHERE current_location.country = 'Italy' AND
uid IN (
SELECT uid2 FROM friend WHERE uid1 = me()
)
这回答了我:
{
"data": [
{
"name": "Matilde xxxx"
},
{
"name": "Samson xxxxxxxx"
},
{
"name": "Emanuela xxxxxxx"
}
]
}
我正在使用这个网站来分析如何管理 json :http://chris.photobooks.com/json/default.htm
我看到,如果我想请求朋友的名字,我必须这样做:root.data[5].name
这就是我的PHP代码:
$user_id = $facebook->getUser();
$all_friends = $facebook->api(array('method' => 'fql.query', 'query' => 'SELECT name FROM user
WHERE current_location.country = "Italy" AND
uid IN (
SELECT uid2 FROM friend WHERE uid1 = 1068943079
) '));
$val = 1;
echo $all_friends['data'][$val]['name'];
(是一个测试,我想在key=1见朋友)但只有白页...什么都不显示..如果我确实回显$all_friends,我会看到数组。
对不起,如果这是一个愚蠢的问题,我知道我可以使用另一种方法来做到这一点。但是我想知道如何使用这种方式!谢谢,对不起我的语言。
这就是我的所有代码:点击这里查看我的代码
1. 您应该print_r($all_friends)
检查数组的结构
尝试
echo $all_friends[$val]['name'];
2. FQL 查询应仅在$user != 0
时发生。
将其放在if
语句下
3. 您没有征求read_friendlists
许可
$params = array(
'scope' => 'read_friendlists'
);
$loginUrl = $facebook->getLoginUrl($params);
医生:
- https://developers.facebook.com/docs/reference/php/facebook-getLoginUrl/
- https://developers.facebook.com/docs/reference/fql/friendlist/