Загрузил PHP PHP SDK с помощью composer в CakePHP 2 и включил расположение папки в AppController
:
class AppController extends Controller {
public function beforeFilter() {
App::import('Vendor', 'Facebook/autoload.php');
$this->Facebook = new Facebook(array(
'appId' => 'myappid',
'secret' => 'mysecretkey',
'default_graph_version' => 'v2.2',
));
}
Ошибка:
Fatal error: Class 'Facebook' not found in C:\wamp\www\rent\app\Controller\AppController.php on line 38 –
Я проверил, включено ли расширение CURL на сервере wampp, и подтверждаю, что это так.
Правильный синтаксис для загрузки app/Vendor/Facebook/autoload.php
является:
App::import('Vendor', 'autoload', array('file' => 'Facebook/autoload.php'));
См. Поваренную книгу для получения дополнительной информации: Загрузка файлов продавца
Однако вы упомянули, что установили пакет с composer
, Если это так, вам нужно только включить строку:
require APP . 'Vendor/autoload.php';
в вашем app/Config/bootstrap.conf
файл, и все, что вы устанавливаете с composer
будет автоматически загружен. Не нужно загружать каждый отдельный класс.
Других решений пока нет …