Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何从facebook sdk获取个人资料图片?_Php_Html_Facebook_Facebook Php Sdk - Fatal编程技术网

Php 如何从facebook sdk获取个人资料图片?

Php 如何从facebook sdk获取个人资料图片?,php,html,facebook,facebook-php-sdk,Php,Html,Facebook,Facebook Php Sdk,我需要从facebook获取个人资料图片,然后用户使用facebook登录php sdk登录到web应用程序。然后把这个展示给大家看 我正在使用以下代码: $fb = new Facebook\Facebook([ 'app_id' => 'xxx...x', 'app_secret' => 'xx....xx', 'default_graph_version' => 'v2.4', 'default_access_token' => isset($_SESSI

我需要从facebook获取个人资料图片,然后用户使用facebook登录php sdk登录到web应用程序。然后把这个展示给大家看 我正在使用以下代码:

 $fb = new Facebook\Facebook([
 'app_id' => 'xxx...x',
 'app_secret' => 'xx....xx',
 'default_graph_version' => 'v2.4',
 'default_access_token' => isset($_SESSION['facebook_access_token']) ? $_SESSION['facebook_access_token'] : 'xx..xx'
 ]);

 try {
 $response = $fb->get('/me?fields=id,name,email,picture');
 $user = $response->getGraphUser();
 $image = $user['picture'];
 echo "<img src='$image'  height='42' width='42'>";
 exit; //redirect, or do whatever you want
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  //echo 'Graph returned an error: ' . $e->getMessage();
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  //echo 'Facebook SDK returned an error: ' . $e->getMessage();
}
$fb=new Facebook\Facebook([
“应用程序id”=>“xxx…x”,
“app_secret”=>“xx…xx”,
“默认图形版本”=>“v2.4”,
'default_access_token'=>isset($_SESSION['facebook_access_token'])?$_SESSION['facebook_access_token']:'xx..xx'
]);
试一试{
$response=$fb->get('/me?fields=id,name,email,picture');
$user=$response->getGraphUser();
$image=$user['picture'];
回声“;
退出;//重定向,或执行任何您想要的操作
}捕获(Facebook\Exceptions\FacebookResponseException$e){
//echo“图形返回错误:”。$e->getMessage();
}捕获(Facebook\Exceptions\FacebookSDKException$e){
//echo“Facebook SDK返回错误:”。$e->getMessage();
}

如何获得配置文件图片并正确显示?

某些错误?我正在检查facebook文档的示例,访问令牌作为参数传递给call get()


编辑。如果不起作用,请尝试以下示例:

您在$image处指定了阵列图片:

"picture": {
    "data": {
      "height": 50,
      "is_silhouette": false,
      "url": "...",
      "width": 50
    }
  }
因此,要检索url,应该使用$image['url']

PS问题来自4年前,此答案仅供参考

"picture": {
    "data": {
      "height": 50,
      "is_silhouette": false,
      "url": "...",
      "width": 50
    }
  }