Size: a a a

2021 April 02

СК

Сергей Rekry† Крупки... in phpGeeks
Вячеслав
Привет всем.
Подскажите, как лучше всего реализовать обработку ошибок, чтобы красиво было.
По MVC.
Создать error handler?
допустим есть метод execute который вызвает методы нужного контроллера исходя из роутинга приложения
в этом методе вызыв оборачиваем в try { ... } catch (...) и отлавливаем локальные исключения
глобальные исключения и ошибки отлавливаем задав через
set_exception_handler и set_error_handler
источник

В

Вячеслав in phpGeeks
Сергей Rekry† Крупкин
допустим есть метод execute который вызвает методы нужного контроллера исходя из роутинга приложения
в этом методе вызыв оборачиваем в try { ... } catch (...) и отлавливаем локальные исключения
глобальные исключения и ошибки отлавливаем задав через
set_exception_handler и set_error_handler
А как же для локальных выдать ошибку во вьюху, если мы будем отлавливать в методе execute, то результат передается на вьюху в контроллере?
источник

m

myw.php_sergey in phpGeeks
Вячеслав
Throw exception.
Допустим я в репозитории user repository генерю ошибку а отловить ее в контроллере?
вопрос  - где должна вылавливаться ошибка Exception_Repository, в контроллере? лучше где-нибудь уж недалеко от самого репозитория ...
источник

m

myw.php_sergey in phpGeeks
Вячеслав
А как же для локальных выдать ошибку во вьюху, если мы будем отлавливать в методе execute, то результат передается на вьюху в контроллере?
если exception - то все ...
источник

В

Вячеслав in phpGeeks
myw.php_sergey
вопрос  - где должна вылавливаться ошибка Exception_Repository, в контроллере? лучше где-нибудь уж недалеко от самого репозитория ...
Ну по логике все ошибки, допустим заполнения полей, должны отлавливаться в контроллере
источник

СК

Сергей Rekry† Крупки... in phpGeeks
Вячеслав
А как же для локальных выдать ошибку во вьюху, если мы будем отлавливать в методе execute, то результат передается на вьюху в контроллере?
это просто пример, в вашем случае, когда представлением занимается бекенд немного иначе
глобальные ошибки работают с представлением и меняют код ответа сервера соостветтсвенно
источник

🦔

🦔 in phpGeeks
источник

m

myw.php_sergey in phpGeeks
Вячеслав
Ну по логике все ошибки, допустим заполнения полей, должны отлавливаться в контроллере
=))))) это не так ....
источник

СК

Сергей Rekry† Крупки... in phpGeeks
Вячеслав
Ну по логике все ошибки, допустим заполнения полей, должны отлавливаться в контроллере
ошибки заполнения полей это не ошибки выбрасываемые через throw
источник

СК

Сергей Rekry† Крупки... in phpGeeks
throw Error значит всё, к бд нет связи или ну на крайний случай 404 ошибка или 500
источник

m

myw.php_sergey in phpGeeks
Сергей Rekry† Крупкин
throw Error значит всё, к бд нет связи или ну на крайний случай 404 ошибка или 500
...т.е. я имел ввиду, что надо вылавливать правильные exceptions в правильным местах ... а потом уже смотреть что делать дальше ..
источник

СК

Сергей Rekry† Крупки... in phpGeeks
да, локально строит вылавливать свои исключения приложения, а остальные исключения глобально, это вероятно будут исключения зависимостей
источник

ДЩ

Дмитрий Щербаков... in phpGeeks
Вячеслав
Привет всем.
Подскажите, как лучше всего реализовать обработку ошибок, чтобы красиво было.
По MVC.
Создать error handler?
должен быть глобальный хендлер, который будет ловить все непойманные исключения и возвращать адекватную ошибку, а не падать в Uncaught exception
а дальше уже от твоей логики зависит хочешь ты сам отловить исключение где-то у себя (потому что ты допустим готов из-за какого-то исключения поменять свой порядок действий. например сделать повторную попытку) или пусть глобальный хендлер ловит
источник

m

myw.php_sergey in phpGeeks
...все таки это отдельная песТня - вылавливать ошибки ...
источник

NK

ID:0 in phpGeeks
Мотайте на ус, пхпшники
источник

MK

Mikhail Kornetov in phpGeeks
ID:0
Мотайте на ус, пхпшники
в поле 'from' же )
источник

AK

Akmal Kadirov in phpGeeks
ID:0
Мотайте на ус, пхпшники
Тянь - это девушка-подросток?
источник

r

release-tracker in phpGeeks
Вышла новая версия Doctrine:  2.8.3
источник

YZ

Yurii Zhuravlov in phpGeeks
ID:0
Мотайте на ус, пхпшники
Такое не везде прокатит. Зачастую тех самых тян заблаговременно определяют как хрюш и отправляют в вечный бан не дав и слова сказать)
источник

V

Vladimir in phpGeeks
сразу вспоминается 🙂
источник