Symfony2 + Facebook-SDK 4.0 - 如何集成?

hum*_*pdi 7 php facebook symfony facebook-php-sdk

如果现在更新我的symfony项目到facebook-sdk-v4.我现在的问题是如何将其集成到我的控制器中使用?

对于旧版本,我在autoload.php中有以下行

//Loading facebook from vendor
require_once __DIR__ . '/../vendor/facebook/php-sdk/src/facebook.php';
Run Code Online (Sandbox Code Playgroud)

然后在控制器中我可以这样

$facebook = new \Facebook(array(
  'appId'  => $this->container->getParameter('fb_appid'),
  'secret' => $this->container->getParameter('fb_secret')
));
$fb_userid = $facebook->getUser();
Run Code Online (Sandbox Code Playgroud)

在我的控制器中没有任何使用声明.

现在4.0版本有点不同了.供应商中不再有facebook.php文件,因此我现在不知道需要什么.和API调用也不同,它看起来像

FacebookSession::setDefaultApplication('YOUR_APP_ID', 'YOUR_APP_SECRET');
Run Code Online (Sandbox Code Playgroud)

当我执行它时,symfony告诉我它无法从全局命名空间加载"FacebookSession",如果我忘记了use语句.

有没有人有经验如何在symfony2中包含新的facebook php sdk?

seb*_*bbo 8

通过Composer安装SDK.因此,将以下行添加到composer.json的require部分,然后执行composer update.

"facebook/php-sdk-v4" : "4.0.*"
Run Code Online (Sandbox Code Playgroud)

Facebook SDK将通过composer自动加载.