it-swarm.com.ru

"Класс" 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! Что я должен делать? 

13
Wocugon

Сначала нужно включить autoloader, чтобы получить доступ к методам и классам службы (как сказано в документации PHP SDK для API Facebook. Вы пытаетесь использовать класс пространства имен 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'
    ]);

Где-то в вашем каталоге (если вы правильно установили SDK Facebook PHP), вы найдете файл autoload.php, который автоматически requires .php файлы, которые вам нужны для использования служб и методов.

30
q.Then

Я думаю, вам нужно сначала импортировать этот класс php в ваш текущий файл

Поместите эту строку вверху

use Facebook\Facebook; 
7
Yifan Fan

Поэтому, проведя свое собственное исследование и убедившись, что приведенный выше ответ мне не подходит, я продолжал читать Документацию, которая открыла мне эту страницу: 

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

Вам необходимо установить SDK Facebook PHP в корневую папку, используя 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. Распакуйте содержимое (либо просто дважды щелкнув по заархивированному файлу, либо используйте любое доступное программное обеспечение для распаковки, чтобы распаковать или распаковать загруженный файл)

  2. Перейдите в папку «src».

  3. Скопируйте или вырежьте папку «src» и вставьте прямо в папку, из которой у вас есть php-файлы.

  4. убедитесь, что вы создали файл "includes.php" в рабочей области вашего проекта php, т.е. папка, в которой находится ваша веб-страница . И добавьте эту строку в ваш файл "includes.php": 

    require_once 'src/Facebook/autoload.php';

  5. Теперь в ваших файлах php, которые имеют отношение к Facebook, вы можете добавить:

    require_once ( "includes.php");

  6. Теперь сохраните ваш файл, зайдите в браузер и обновите.

// Не забудьте сохранить свою работу организованной, ссылаясь теперь на все файлы, которые могут понадобиться в вашем проекте, через «include.php». Это может варьироваться для некоторых разработчиков, в зависимости от того, как и над чем вы работаете.

1
AppEmmanuel