我正在使用FOSUserBundle與FOSFacebookBundle的示例。在此之後,我構建了我的應用程序。如何包含Facebook-SDK
相關的項目結構就像是以下幾點:FacebookProvider的
src\ABC\MainBundle\
src\ABC\UserBundle\
src\ABC\MainBundle\Controller\DefaultController.php
src\ABC\UserBundle\Security\User\Provider\FacebookProvider.php
vendor\facebook\php-sdk\src\base_facebook.php
部分:
use \BaseFacebook;
use \FacebookApiException;
class FacebookProvider implements UserProviderInterface
{
protected $facebook;
public function __construct(BaseFacebook $facebook, $userManager, $validator)
{
$this->facebook = $facebook;
}
public function loadUserByUsername($username)
{
try {
$fbdata = $this->facebook->api('/me');
...
正如你可以看到已經有可用的Facebook的對象。 我想現在做的是幾乎相同的,但在我DefaultController:
use \BaseFacebook;
use \FacebookApiException;
class DefaultController extends BaseController
{
public function indexAction(){
$facebook = new Facebook('key', 'secret');
$fbfriends_obj = $facebook->api('/'.$fbid.'/friends');
...
但我得到的消息
Fatal error: Class 'ABC\MainBundle\Controller\Facebook' not found in C:\xampp\htdocs\...\src\ABC\MainBundle\Controller\DefaultController.php on line x
這是爲什麼?我如何從defaultcontroller中訪問facebook-class?如果它已經可以爲facebook供應商,爲什麼它不可能我的控制器?
任何提示將非常感激!