我试图从用户中提取用户信息。 能够使用fql获得它。但主要问题是我无法将特定数据(例如名称)存储在单独的变量中 我想在我的网页的文本框中显示该值。 可以告诉我什么是错的吗?
<?php
$app_id = '237773783026***';
$app_secret = '90a6514ebed8***f47a3d9a695608315';
$my_url = 'http://apps.facebook.com/anubhawfirst';
$code = $_REQUEST["code"];
// auth user
if(empty($code)) {
$dialog_url = 'https://www.facebook.com/dialog/oauth?client_id='
$app_id . '&redirect_uri=' . urlencode($my_url) ;
echo("<script>top.location.href='" . $dialog_url . "'</script>");
}
// get user access_token
$token_url = 'https://graph.facebook.com/oauth/access_token?client_id='
$app_id . '&redirect_uri=' . urlencode($my_url)
. '&client_secret=' . $app_secret
. '&code=' . $code;
// response is of the format "access_token=AAAC..."
$access_token = substr(file_get_contents($token_url), 13);
// run fql query
$fql_query_url = 'https://graph.facebook.com/'
. 'fql?q=SELECT+name+,+uid+FROM+user+WHERE+uid=me()'
. '&access_token=' . $access_token;
$fql_query_result = file_get_contents($fql_query_url);
$fql_query_obj = array(json_decode($fql_query_result, true));
//this is the part where am trying to extract using array.
foreach ($fql_query_obj as $item)
{
print $fql_query_obj[0];
;
}
// display results of fql query
echo '<pre>';
print_r("query results:");
print_r($fql_query_obj);
echo '</pre>';
?>
答案 0 :(得分:0)
您有一个包含查询结果的多维数组。 uid和name列中的值深度为四级。像这样访问它们:
$uid = $fql_query_obj[0]['data'][0]['uid'];
$name = $fql_query_obj[0]['data'][0]['name'];