Composer - НЕ МОЖЕТ получить пакет для работы / загрузки - PullRequest
0 голосов
/ 17 мая 2018

Итак, просматривая документы в Интернете и комментарии пользователей здесь и там, Composer кажется отличным инструментом, и я уже использовал npm, поэтому я могу представить, что его было бы очень удобно использовать.Есть только одна проблема, я не могу заставить пакеты, которые я устанавливаю с Composer, работать независимо от того, что я пытаюсь.

Я пытаюсь установить пакет JWT от Lcobucci.У меня был существующий проект, к которому я хотел добавить это, но способ настройки существующего проекта заключается в том, что у меня есть файл functions.php в корне, который затем включается всеми другими сценариями php, которые есть в моем проекте.Файл функций содержит include для плагинов БД, подключение к БД, include и т. Д.

Я установил пакет с помощью Composer напрямую, используя

composer require lcobucci/jwt

Я также попытался установить его, создав файл JSON изапуск

composer install

, как сказано в документации.

Затем я попытался включить файл autoload.php в мое включение, используя

require __DIR__. "/vendor/autoload.php";

Затем добавил

use Lcobucci\JWT\Parser; //JWT Parser Class

, но он продолжал жаловаться, что Класс не существует, когда я пытался его использовать.

Затем я попытался вручную, используя require_once, для всех реальных файлов PHP в папке src папкиКомпозиторЕще ничего.Я попытался переключить вещи вокруг .. пытаясь увидеть, какие файлы включены PHP, используя

get_included_files();

Я также попытался

composer dumpautoload

, но все, что я получил, было

Generating autoload files

Кажется, я что-то упускаю, поэтому я не решался опубликовать этот вопрос, но сейчас я потратил пару часов на это, и это разочаровывает.Есть что-то, что я пропустил?

Если это поможет, я на Windows 10 64-разрядный сервер WAMP с PHP версии 5.6.25 и 1.6.5.

РЕДАКТИРОВАТЬ: Я простопонял, что может помочь, если я раскрою свою файловую структуру.ROOT | -functions.php | -register | -index.php | vendor | -autoload.php | -composer | -lcobucci | -src

Я пытаюсь получить доступ к библиотеке JWT из файла index.phpв папке реестра, в которой есть файл include.php.Функция работает как описано выше.

1 Ответ

0 голосов
/ 17 мая 2018

Поэтому я исправил эту проблему, поместив оператор use в файл index.php (то есть тот, который включал файл functions.php вместо включенного в файл functions.php)

Оказывается, использование пространства имен / класса не переносится ... Или я не совсем уверен, но я обновлю этот ответ, если получу больше информации.

...