Как организовать контроллер под psr-15?

Собственно говоря суть отраженна в название, но малость разверну. Сейчас контроллер просто имплементирует RequestHandlerInterface и по суте каждое действие - это отдельный класс контроллера и в данном случае, даже если действия однородные, манипулирует одними и теме же зависимостимя - это всеравно разные классы, таким образом что могло бы быть одним классом контроллера с разными методами, сейчас это 1 и более классов. И еще один аспект, как быть если после контроллера должны выполнять миддлевары.
  • Вопрос задан
  • 530 просмотров
Пригласить эксперта
Ответы на вопрос 2
@alexkozlov1982
public function handle(ServerRequestInterface $request)
    {
        // получаем каким либо образом ваш метод action
        // в данном случае берем его из Request
        $this->action = $request->getAttribute('action') . 'Action';

        return $this->{$this->action}($request);
    }

private function getAction(ServerRequestInterface $request)
    {
          //  обработка вашего метода
    }
Ответ написан
nepster-web
@nepster-web
Посмотрите в сторону https://docs.zendframework.com/zend-expressive/

Вот есть пример использования: https://github.com/zendframework/zend-expressive-s...

Но, как я понимаю это уже идет не MVC, и классическое понимание Controller тут не применяется.
Это некий обработчик запроса.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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