В Composer можно добавить свою директорию для автозагрузки классов, используя секцию "autoload" в файле composer.json вашего проекта.
Добавление новой директории делается с помощью ключей "psr-4" или "psr-0" в секции "autoload". Основное различие между этими двумя ключами заключается в том, как определяются пространства имен (namespaces) и соответствующие им директории.
1. PSR-4 (Рекомендованный способ)
Пример использования PSR-4:
{ "autoload": { "psr-4": { "MyNamespace\": "src/" } } }
В данном примере, Composer будет искать классы, принадлежащие пространству имен "MyNamespace", в директории "src/" проекта. Вы можете свободно заменить "MyNamespace\" на ваше собственное пространство имен, а "src/" на нужную вам директорию.
2. PSR-0 (Устаревший способ)
Пример использования PSR-0:
{ "autoload": { "psr-0": { "MyNamespace\": "src/" } } }
Этот способ работает похоже на PSR-4, но он используется для проектов, не соответствующих полностью стандарту PSR-4.
После внесения изменений в composer.json выполните команду "composer dump-autoload", чтобы обновить автозагрузчик Composer и включить вашу новую директорию в процесс автозагрузки.
Composer затем сгенерирует файл autoload.php, который можно подключить к вашему приложению:
require_once 'vendor/autoload.php';
Теперь все классы, использующие ваше пространство имен, будут успешно загружаться!