twitter — PHP include не работает для TwitterOAuth.php, но когда я копирую и вставляю его содержимое напрямую, все в порядке

Я сталкиваюсь с проблемами при попытке включить TwitterOAuth.php из https://github.com/abraham/twitteroauth использовать Twitter API.

Моя проблема заключается в следующем: у меня есть файл с именем twitter.php в том же каталоге, что и мои файлы TwitterOAuth.php и OAuth.php. Когда я пытаюсь использовать этот фрагмент кода для подключения:

include("TwitterOAuth.php");

//I actually fill in these values in my code, no worries...
$apikey = //"...";
$apisecret = //"...";
$accesstoken = //"...";
$accesssecret = //"...";

$connection = new TwitterOAuth($apikey, $apisecret, $accesstoken, $accesssecret);
print_r($connection);

Я получаю эту ошибку (строка 239 — это строка $ connection = new TwitterOAuth (…)):

Неустранимая ошибка: класс ‘TwitterOAuth’ не найден в /home/sites/(mydomain)/public_html/twitteroauth-master/src/twitter.php в строке 239

Однако, если я скопирую и вставлю все содержимое файла TwitterOAuth.php, заменив строку, в которой я вызываю, include («TwitterOAuth.php»); с этим содержимым все работает нормально. Я также пытался использовать include_once, require и require_once, но безрезультатно.

Пожалуйста, посоветуйте — я новичок в PHP и понятия не имею, почему копирование и вставка работ, когда include () нет.

Спасибо!

0

Решение

Вы должны изменить:

include("TwitterOAuth.php");

в:

include 'TwitterOAuth.php';
use Abraham\TwitterOAuth\TwitterOAuth;

чтобы иметь доступ к TwitterOAuth в его определенном пространстве имен.

Рекомендуется использовать include '<file>' так как include это специальная языковая конструкция, а не функция, и ее не следует путать с функцией.

3

Другие решения

Ваши файлы находятся в одном каталоге? Поскольку вы используете include («TwitterOAuth.php»); тогда это означает, что файлы существуют в одном каталоге. Если бы это было включено («../ TwitterOAuth.php»); Тогда файл будет существовать в родительском каталоге

1

По вопросам рекламы [email protected]