问题描述
|
我已经开始尝试使用Facebook登录演示代码,而我只是想知道如何从我的代码中提取个人信息,例如显示图片,姓名,名字,姓氏,用户名和以后的名字。
当前演示显示:
Your User Object (/me)
Array
(
[id] => 647445630
[name] => John Molanza
[first_name] => John
[last_name] => Molanza
[link] => http://www.facebook.com/johnmolanza
[username] => johnmolanza
[gender] => male
[timezone] => 1
[locale] => en_GB
[verified] => 1
[updated_time] => 2011-05-24T03:12:09+0000
)
以及我的展示图片和其他东西。但是如何分别显示每条信息,例如[last_name]或[first_name],而不是一次显示所有信息。
这是我在下面使用的代码-预先感谢您!
//config
include \"resources/Connections/kite.PHP\";
require \'resources/facebook/src/facebook.PHP\';
$facebook = new Facebook(array(
\'appId\' => $appid_kite,\'secret\' => $secret_kite,));
// Get User ID
$user = $facebook->getUser();
// We may or may not have this data based on whether the user is
登录。
//
//如果此处有$ user id,则表示我们知道该用户已登录
// Facebook,但我们不知道访问令牌是否有效。访问
//如果用户退出Facebook,则令牌无效。
if ($user) {
try {
// Proceed kNowing you have a logged in user who\'s authenticated.
$user_profile = $facebook->api(\'/me\');
} catch (FacebookApiException $e) {
error_log($e);
$user = null;
}
}
// Login or logout url will be needed depending on current user
州。
如果($ user){
$ logoutUrl = $ facebook-> getlogoutUrl();
}其他{
$ loginUrl = $ facebook-> getLoginUrl();
}
//由于我们正在获取公共数据,因此此调用将始终有效。
$ naitik = $ facebook-> api(\'/ naitik \');
?>
<!doctype html>
<html xmlns:fb=\"http://www.facebook.com/2008/fbml\">
<head>
<title>PHP-sdk</title>
<style>
body {
font-family: \'Lucida Grande\',Verdana,Arial,sans-serif;
}
h1 a {
text-decoration: none;
color: #3b5998;
}
h1 a:hover {
text-decoration: underline;
}
</style>
</head>
<body>
<h1>PHP-sdk</h1>
<?PHP if ($user): ?>
<a href=\"<?PHP echo $logoutUrl; ?>\">logout</a>
<?PHP else: ?>
<div>
Login using OAuth 2.0 handled by the PHP SDK:
<a href=\"<?PHP echo $loginUrl; ?>\">Login with Facebook</a>
</div>
<?PHP endif ?>
<h3>PHP Session</h3>
<pre><?PHP print_r($_SESSION); ?></pre>
<?PHP if ($user): ?>
<h3>You</h3>
<img src=\"https://graph.facebook.com/<?PHP
echo $ user; ?> / picture \“>
<h3>Your User Object (/me)</h3>
<pre><?PHP print_r($user_profile); ?></pre>
<?PHP else: ?>
<strong><em>You are not Connected.</em></strong>
<?PHP endif ?>
<h3>Public profile of Naitik</h3>
<img src=\"https://graph.facebook.com/naitik/picture\">
<?PHP echo $naitik[\'name\']; ?>
</body>
</html>
解决方法
您已经有了数组,因此可以通过键获取每个值。试试这个代替print_r($ user_profile)
echo $user_profile[\'first_name\']; //Prints John Molanza
echo \'<a href=\"\'.$user_profile[\'link\'].\'\">Go to my profile</a>\';