Я использую Services_Facebook-0.2.14
SDK PEAR, и первый из следующих строк в Facebook.php
не удается:Почему это require_once терпит неудачу?
require_once 'Common.php';
require_once 'Services/Facebook/Common.php';
require_once 'Services/Facebook/Exception.php';
с сообщением журнала:
[21-Sep-2016 13:41:46 UTC] PHP Fatal error: require_once(): Failed opening required 'Common.php' (include_path='/home/thehanfw/php/Services') in /home/thehanfw/php/Services/Facebook.php on line 23
В моем клиенте API Facebook, я использую следующие строки для доступа к SDK:
ini_set("include_path", "/home/thehanfw/php/Services");
require_once "Facebook.php";
Я установил путь включения явно подобным образом из отчаяния, befo re мое приложение даже найдет Facebook.php
. Файл Common.php
присутствует, и я закомментировал require_once 'Services/Facebook/Common.php';
, потому что Services
уже является каталогом include, и я получал точно такую же ошибку с исходным кодом.
Интересно, что эта ошибка регистрируется около 20 раз в очень быстрой последовательности, прежде чем я получу ошибку HTTP ERR_TOO_MANY_REDIRECTS
в моем клиентском приложении. Это находится на общем хосте, с PHP 5.6.22.
ЛОМАЯ: Я нашел это забавным, что мой клиент приложение работает нормально на моем Dev машины, хотя, но потом я понял, что только потом установил взорванной PEAR на моем компьютере, и приложение работает против SDK напрямую скачан из Facebook, названный php-graph-sdk-5.0.0
. Я не знаю, была ли версия 5.0.0
FB по сравнению с версией PEAR 0.2.14
, но я очистил дерьмо PEAR с моего хоста и установил FB SDK, он также работает и на хосте.
Я думаю, что PHP не указывает на правильную папку. Ваш include_path выглядит нормально (так как Facebook.php находится там, он делает хороший базовый каталог, (я прав?)). Таким образом, если вы удалите часть 'Services /' из 'require_once 'Services/Facebook/Common.php';' Я думаю, что она решится нормально. – Werner
Я сделал, и это сработало, тогда я нашел ту же проблему в 'Common.php'. Это код PEAR, а не мой вообще, и я очень незнакома с ним, поэтому я сообщу им, но не пытаюсь его исправить. – ProfK