Php 在laravel 5 Facebook graph api中找不到类Facebook
我在laravel 5.1中使用facebook graph api。我已经安装了它usnig composer命令Php 在laravel 5 Facebook graph api中找不到类Facebook,php,facebook,laravel,facebook-graph-api,laravel-5,Php,Facebook,Laravel,Facebook Graph Api,Laravel 5,我在laravel 5.1中使用facebook graph api。我已经安装了它usnig composer命令 composer require facebook/php-sdk-v4 facebook graph api已经安装 但是当我在laravel中创建facebook api对象时,它会给我这个错误 Class 'App\Http\Controllers\Userapp\Facebook\Facebook' not found 在这一行 $fb = new Facebook\
composer require facebook/php-sdk-v4
facebook graph api已经安装
但是当我在laravel中创建facebook api对象时,它会给我这个错误
Class 'App\Http\Controllers\Userapp\Facebook\Facebook' not found
在这一行
$fb = new Facebook\Facebook([
这是我的控制器文件
<?php namespace App\Http\Controllers\Userapp;
require_once( base_path('vendor/facebook/php-sdk-v4/src/Facebook/autoload.php') );
// Facebook Requires
use Facebook\FacebookSession;
use Facebook\FacebookRedirectLoginHelper;
use Facebook\FacebookRequest;
use Facebook\FacebookResponse;
use Facebook\FacebookSDKException;
use Facebook\FacebookRequestException;
use Facebook\FacebookAuthorizationException;
use Facebook\GraphObject;
use Facebook\Entities\AccessToken;
use Facebook\HttpClients\FacebookHttpable;
use Facebook\HttpClients\FacebookCurlHttpClient;
use Facebook\HttpClients\FacebookCurl;
请帮我解决这个问题。
我会非常感激的
感谢在index函数中,您不在全局范围内,因此当您将类称为
Facebook\Facebook
时,PHP认为您正在调用App\Http\Controllers\Userapp
命名空间中声明的Facebook\Facebook
或者,您需要像下面那样使用前缀\
全局引用它们
public function index()
{
$fb = new \Facebook\Facebook([]);
// your code
catch(\Facebook\Exceptions\FacebookResponseException $e)
// your code
catch(\Facebook\Exceptions\FacebookSDKException $e)
// your code
}
或者使用别名
use Facebook\Facebook as Facebook;
use Facebook\Exceptions\FacebookResponseException as FacebookResponseException
use Facebook\Exceptions\FacebookSDKException as FacebookSDKException
public function index()
{
$fb = new Facebook([]);
// your code
catch(FacebookResponseException $e)
// your code
catch(FacebookSDKException $e)
// your code
}
谢谢Burak我现在在办公室我会在一段时间后检查它,并让你了解这个编码你能检查一下自动加载的文件是否加载了吗?第1行:
ob_start()代码>第2行:require_一次(基本路径('vendor/facebook/php-sdk-v4/src/facebook/autoload.php')代码>第3行:$output=ob_get_contents();//检查此项是否为空
第4行:回显为空($output)?'未加载':'加载'代码>第5行:ob_end_clean()代码>@usama什么都没有?你的意思是它没有打印、没有加载或没有加载?然后检查路径文件是否存在于正确的位置,因为它似乎无法包含自动加载文件。啊,你在Windows上,这就是你面临这个问题的原因,你最好签出。无论如何,您失败的原因是Windows中的斜杠,因为您可以看到预期值和获得的值之间的差异,而不是使用require\u一次(基本路径(join(目录分隔符,数组('vendor','facebook','php-sdk-v4','src','facebook','autoload.php'))
;
use Facebook\Facebook as Facebook;
use Facebook\Exceptions\FacebookResponseException as FacebookResponseException
use Facebook\Exceptions\FacebookSDKException as FacebookSDKException
public function index()
{
$fb = new Facebook([]);
// your code
catch(FacebookResponseException $e)
// your code
catch(FacebookSDKException $e)
// your code
}