класс не найден автозагрузка psr-4 - PullRequest
0 голосов
/ 28 мая 2019

Я изучаю автозагрузку Composer.У меня есть некоторые проблемы с PSR-4.

Я слежу за этим уроком: https://vegibit.com/composer-autoloading-tutorial/

Я пересмотрел код несколько часов, но у меня остается та же проблема, когда я загружаю скриптв браузере:

Неустранимая ошибка: необнаруженная ошибка: класс 'VegibitLibraryGreeting' не найден в C: \ PHPWebPages \ aldemo \ aldemo4 \ index.php: 5 Трассировка стека: # 0 {main} брошено вC: \ PHPWebPages \ aldemo \ aldemo4 \ index.php в строке 5

Я пробовал несколько решений, предложенных в похожих вопросах, но я еще не решил.

Я прилагаюнекоторые скриншоты:

Tutorial directory enter image description here composer.json and greeting.php

Пожалуйста, кто-нибудь может помочь мне выяснить, почемупроисходит эта ошибка.Заранее спасибо.

Примечания:

Я собираюсь показать новый код после решения, чтобы каждый, у кого возникла такая же проблема, мог рассмотреть решение:

composer.json theme.php index.php

1 Ответ

2 голосов
/ 28 мая 2019

greeting.php:

Вы не можете объявить два пространства имен в одном файле. Объявление пространства имен должно быть в самом начале файла PHP. Вы также должны объявить пространства имен, как они представлены в composer.json:

namespace Vegibit\Library;

Разделите этот код на отдельные файлы.

index.php:

$vb = new Vegibit\Library\Greeting();
...