2017-05-04 18 views
0

右。これは私のノッキングのダメージをし始めている。私はこれがスーパーシンプルでなければならないように感じますが、私はそれを働かせるように見えません。私は取得しています何らかの理由で クラス 'Facebook'が見つかりません

|admin/ 
|---sdks/ 
|----facebook/ 
|-----5.5.0/ 
|------src/ 
|-------Facebook/ 
|--------Facebook.php 
|  /// rest of files 
|facebook_test.php 

facebook_test.php 内側:

クラスのFacebook "ここ

が私のフォルダ構造では見られません
//include the Facebook PHP SDK 
include_once '/sdks/facebook/5.5.0/src/Facebook/autoload.php'; 
include_once '/sdks/facebook/5.5.0/src/Facebook/Facebook.php'; 


//instantiate the Facebook library with the APP ID and APP SECRET 
$facebook = new Facebook(array(
    'appId' => '123456789', 
    'secret' => 'a123456789b', 
    'cookie' => true 
)); 

私が試してみました:

1)ここで示唆したように、生のFacebook.phpファイルの取得:PHP Fatal error: Class 'Facebook' not found in

2)ここで示唆したように自動ロードを必要とする:'Class 'Facebook\Facebook' not found" Facebook SDK error

しかしこれらは効果がありません。

SDKのバージョン5.5.0を使用しています。

ALOS、私はFacebook.phpをchedkedしていることは、クラスのFacebook

を含んでいます誰が助けることはできますか?

答えて

1

のFacebook SDKはそうnamespacesを使用しています。

new \Facebook\Facebook(..) 

あなただけのマニュアルを確認する必要があり、それはあなたが提供...


をこれはあなたが必要とするすべてであるリンクにだけでなく一つ一つの例では、文字通りです実行する

<?php 

include 'src/Facebook/autoload.php'; // path to your autoload.php 
$fb = new \Facebook\Facebook(...); 
+0

私はそうではありません。さて、私はそれが何か簡単だと分かっていました。それを動作させるために私のコードに入れなければならないものを私に見せることができるでしょうか?上記の例は失敗するようです。私はnoob(一口) – JamesG

+0

@ JamesG私は自分の答えを編集した、ちょうど自動ロードを含めてクラスを作成 – Peter

+0

ありがとう。これはうまくいった。 – JamesG

0

Facebook Documentationによれば、v5.xでは名前空間を使用します。したがって、コードを次のように変更する必要があります。

//include the Facebook PHP SDK 
require(__DIR__.'/sdks/facebook/5.5.0/src/Facebook/autoload.php'); 

// load namespaces 
use Facebook\Facebook; 

//instantiate the Facebook library with the APP ID and APP SECRET 
$facebook = new \Facebook\Facebook(array(
    'appId' => '123456789', 
    'secret' => 'a123456789b', 
    'cookie' => true 
)); 
関連する問題