@IvanN777

Как загрузить классы в одной папке commands(Service Locator) без использования кучи use?

Проблема:
Есть папка commands
Там лежат классы команд и есть веб хук.
Там есть switch, указывающий какую команду выполнять.

Вот так можно было бы получить обьект класса.
Однако в проекте имеется autoloader composer, возникают конфликты если искать комады через свой автозагрузчик.
$classname=$var.'Class';
   $bar=new $classname("xyz");


Почему не фабрика:
Есть папка commands и там есть команды и по логике вещей я хочу чтобы после создания нового класса он был доступен или хотябы загрузить его в сервис локаторобразец локатора(все имеющиеся классы команд)

А в фабрике нужно перечислять классы ручками, это грязно не DRY.
Ведь менять нужно в 2х местах и класс делать и метод фабрики под него.
А у меня плохая память.

Решение:
Пока пробую написать avtoloader, который не конфликтует с composer.
Если кто-то знает как реализовать это иначе, буду рад.
  • Вопрос задан
  • 91 просмотр
Решения вопроса 1
Sanasol
@Sanasol Куратор тега PHP
нельзя просто так взять и загуглить ошибку
Почему не используете автозагрузку композера для своих классов?

https://getcomposer.org/doc/01-basic-usage.md#auto...
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы