@FLASH911

Какое правильное устройство CMS c архитектурой MVC на php?

Добрый день. Пишу себе небольшую CMS и смотрю в сторону MVC. Столкнулся с вопросом в подключении контроллеров и плагинов. Хочу сделать так: брать из адреса имя нужного класса, имя метода и параметры. Адрес будет примерно такой: сайт.ру/news/searchnews/15. Таким образом запустится класс news и метод searchnews c параметром 15. А плагины хочу запускать свои для каждого контроллера. Но как это лучше сделать? Также на классах или без них? Ведь нередко на странице нужно запускать несколько плагинов. Сам в MVC и ООП разбираюсь пока плоховато, поэтому прошу помощи и критики в мой метод запуска контроллеров.
  • Вопрос задан
  • 739 просмотров
Пригласить эксперта
Ответы на вопрос 3
@antimind
Посмотрите как делается вызов контроллера в YII и Laravel к примеру.
Ответ написан
Комментировать
miraage
@miraage
Старый прогер
1) Хватит писать велосипеды
2) Если все же решились на свой микрофреймворк, тогда читайте ниже

Роутинг - https://github.com/nikic/FastRoute
HTTP - https://github.com/symfony/HttpFoundation

А лучше возьмите какой-нибудь Lumen и не парьте себе голову, честное слово.
Ответ написан
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
правильно - HMVC хотя бы. А лучше вообще думать в сторону чего-то поинтереснее.

Ну и да, норм фронт контроллер (PSR-7 совместимый или symfony/httpkernel совместимый), нормальная библиотека для маршрутизации (fastroute подойдет но я хз как там с расширяемостью, я бы предложил symfony/routing как наиболее гибкую). Ну и расширение функциональности при помощи декораторов/адаптеров/композиции классов. Все на интерфейсах и минимум наследования, делать все системные классы final.

Вот.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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