@eugene159

Где лучше написать обработчик исключений в самописном MVC?

Я прочитал вот эту статью на хабре:
https://habr.com/ru/post/150267/

Исходники здесь:
https://github.com/vitalyswipe/tinymvc

В исходном коде вместо того, чтобы кидать исключения, например, если контроллер не найден, вызывается метод с редиректом на 404 страницу, отправкой заголовков и вызовом exit.

Вот, например, строки 63 и 79.
https://github.com/vitalyswipe/tinymvc/blob/master...

Я хочу написать с исключениями. Но у меня вопрос. Где лучше писать обработку исключений? То есть, try {...} catch() ...

В bootstrap.php (там подключается файл route.php)? Или в самом файле route.php?
Мне кажется, что это несколько неправильно. bootstrap.php - это загрузчик. А route.php - это файл маршрутизации. Но где тогда лучше?
  • Вопрос задан
  • 87 просмотров
Пригласить эксперта
Ответы на вопрос 3
anton_reut
@anton_reut
Начинающий веб-разработчик
Мне кажется, что это несколько неправильно. bootstrap.php - это загрузчик. А route.php - это файл маршрутизации. Но где тогда лучше?

- ИМХО - там где возникает ошибка там и должно быть, иначе у тебя другие куски приложения почему-то будут зависеть от ошибки в другом модуле (роутере), то есть у тебя роутер накосячил, а отвечать почему-то должен загрузчик. У тебя ДО возникновения ошибки может быть некая логика и она например в любом случае должна сработать не смотря на то накосячил какой-то модуль или нет.
Ответ написан
index0h
@index0h
PHP, Golang. https://github.com/index0h
В контроллерах, в роутере, если не найден роут, или еще что-то, в апликейшне (у вас это бутстрап), на случай непредвиденных исключений.

Я очень надеюсь, что вас сильно смущает год выпуска статьи (так уже не пишут),
на всякий пожарный: https://github.com/index0h/php-conventions
Ответ написан
VladimirAndreev
@VladimirAndreev
php web dev
Все зависит от того, что вы с ними делать собираетесь.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
SymbioWay Москва
от 120 000 до 180 000 ₽
АКМЭ сервис Санкт-Петербург
от 120 000 до 150 000 ₽
РосТендер Москва
от 130 000 до 150 000 ₽