web-dev-qa-db-ja.com

「クラス 'Facebook \ Facebook'が見つかりません」Facebook SDKエラー

さて、私はFacebookのSDKに新しいです。ガイドラインに従って、書かれている手順を実行しています。しかし、このエラーが発生し、その理由がわかりません。

 Fatal error: Class 'Facebook\Facebook' not found in C:\wamp\www\index.php on line 134

エラー行コードは次のとおりです。

<?php 
$fb = new Facebook\Facebook([
  'app_id' => '{app-id}',
  'app_secret' => '{app-secret}',
  'default_graph_version' => 'v2.2',
  ]);
?>

これは私が作ったものではありません。これはFacebookのガイドラインで言及されているのとまったく同じコードです!私は何をすべきか?

15
Wocugon

サービスメソッドとクラスへのアクセスを取得するには、最初にautoloaderを含める必要があります(PHP Facebook AP​​IのSDKドキュメントに記載されています。名前空間付きクラスを使用するにはFacebook\Facebook、そのメソッドを使用しますが、PHPファイルにクラスがありません。

require_once 'src/Facebook/autoload.php';
//Create the Facebook service
$fb = new Facebook\Facebook ([
    'app_id' => '-----------------',
    'app_secret' => '--------------------',
    'default_graph_version' => 'v2.4'
    ]);

ディレクトリのどこかに(Facebook PHP SDK)を正しくインストールした場合)、autoload.phpファイル。自動的にrequires .phpファイルを使用して、サービスとメソッドを使用する必要があります。

32
q.Then

最初にそのphpクラスを現在のファイルにインポートする必要があると思います

この行を一番上に置きます

use Facebook\Facebook; 
7
Yifan Fan

それで、私自身でいくつかの調査を行った後、上記の答えがうまくいかなかった後、私はこのページに導かれたドキュメントを読み続けました:

https://github.com/facebook/php-graph-sdk/blob/5.5/docs/getting_started.md

Facebookをインストールする必要がありますPHP SDKを使用して、ルートフォルダーにComposer=コマンドプロンプト(Windows))。私のシステムでは次のようになりました。

C:\wamp64\www>composer require facebook/graph-sdk

それが完了したら、スクリプトの先頭に次を追加する必要がありました。

require_once __DIR__ . '/vendor/autoload.php';

Facebook SDKに接続できるようになりました。

私がやったようにこれで苦労した人々のために、これが将来うまくいくことを願っています。

2
Nomnom

ここからZipファイルをダウンロードします。 https://github.com/facebook/php-graph-sdk/archive/5.4.Zip

手順:

  1. コンテンツを解凍します(zipファイルをダブルクリックするか、利用可能な解凍ソフトウェアを使用して、ダウンロードしたファイルを解凍または解凍します)

  2. 「src」フォルダーに移動します。

  3. 「src」フォルダーをコピーまたは切り取り、phpファイルがあるフォルダー内に貼り付けます。

  4. phpプロジェクトのワークスペース内に「includes.php」ファイルを作成したことを確認してください。 Webページが置かれているフォルダー。そして、次の行を「includes.php」ファイルに追加します。

    require_once 'src/Facebook/autoload.php';

  5. これで、facebookに関係するphpファイルに以下を追加できます:

    require_once( "includes.php");

  6. ファイルを保存し、ブラウザに移動して更新します。

//「includes.php」を介してプロジェクトで必要となる可能性があるすべてのファイルを参照することにより、作業を整理しておくことを忘れないでください。開発者によっては、作業方法や作業内容によって異なる場合があります。

1
AppEmmanuel