Как правильно написать Controller для блога на MVC PHP?
Если для обучения...
1) Автолоад в контроллере? За что? Хочешь пользоваться автолоадом - выведи в какой-то базовый бутстрап что-ли. Вообще сегодня уже неймспейсы можно юзать, говорят удобно и модно )
2) Акшн и контроллер нужно бы проверить на наличие левых символов. Например регулярными выражениями.
3) В идеале все возможные/допустимые роуты должны быть описаны, обычно в отдельном объекте route. Там же и прописываются правила для расшифровки, что(например алиас статьи в $routs[2]) и какое (например альфанумерик) значение лежит в путях. Он и передается в конструктор роутера. По этому он обычно не статик. Хотя тут у кого как реализовано.
4) Есть ненулевая вероятность существования переменных в урл ДО контроллера, например языковой префикс: www.mysite.com/ru/someaction/somecontroller
Глянь данный репозиторий https://github.com/panique/mini