如何使用php检索Facebook应用程序用户朋友列表及其详细信息


How to retrieve Facebook app user friends list with their details using php

我正在开发社交媒体web应用程序,我想获取应用程序用户朋友列表和他们的详细信息。我试图使用php-sdk 4.0检索用户朋友数据,但它给了我一个空数组,然后我尝试使用json格式获取数据。这是我的代码,我现在正在尝试

<?php
         $fb_config = array(
             'appId' => 'xxxxxxxxxxxx',
             'secret' => 'xxxxxxxxxxxxxxxxx',
             'cookie' => TRUE
         );
         $this->load->library('facebook', $fb_config);
         $user = $this->facebook->getUser();
         if ($user) {
             try {
                 $data['user_profile'] = $this->facebook->api('/me');
             } catch (FacebookApiException $e) {
                 $user = null;
             }
         }
         if ($user) { //ok, the user exist, proceed
             $access_token = $this->facebook->getAccessToken();
             $file = file_get_contents('https://graph.facebook.com/me/friends?access_token=' . $access_token);

             $jsonFriends = json_decode($file, true);
             $Friends = $jsonFriends['data'];
         }
 ?>

我得到

致命错误:在第7行上的M:''examplep''htdocs''fb''demo.php中,当不在对象上下文中时使用$this

运行此代码时出现此错误。

您需要更改

 $this->load->library('facebook', $fb_config);

  FacebookSession::setDefaultApplication('YOUR_APP_ID', 'YOUR_APP_SECRET');

作为开始。

此数组通常用于JavaScript SDK

$fb_config = array(
         'appId' => 'xxxxxxxxxxxx',
         'secret' => 'xxxxxxxxxxxxxxxxx',
         'cookie' => TRUE
     );

您从哪里获得访问令牌或会话。

你是否使用了另一个带有JS sdk的页面?因为我找不到"FacebookRedirectLoginHelper"或"FacebookJavaScriptLoginHelpr"的实例。

我真的建议你从浏览facebook的文档开始:

https://developers.facebook.com/docs/php/gettingstarted/4.0.0