Pull to refresh

Когда критическая ошибка приносит радость…

Reading time 1 min
Views 1.9K
Прочитав недавно на пьяную голову «Обработка ошибок и исключений в PHP», решил применить полученные знания на практике. Честно, ещё 6 часов назад не знал, куда это меня приведёт, но в итоге теперь мои скрипты при ошибка зажигают вот такой симпотный экран:




Если честно, то PHP тут как такового немного. Создаём свой собственный подкласс Exception; с помощью set_error_handler приказываем PHP кидать наше новое исключение всякий раз, когда возникает ошибка или предупреждение; и оборачиваем весь наш код в try { … } catch () { … }. Короче говоря, всё как в вышеупомянутой статье. Большую часть времени, я потратил на стили форматирования и картинки (которые, к слову, вставляются с помощью url-data; т.е. класс мой получился независимым от внешних ресурсов).

«Код-то где, балаболка?»



Весь необходимый код сосредоточен в одном файле, являющимся частью фреймворка будущего (NB! …в зачаточном состоянии ;-) ). Прежде чем inсlude-ить этот файл в свой проект, нужно выполнить с ним следующие операции:

  1. Избавится от «глушилки» в первой строке;
  2. Все упоминания Aero()->get_option(...) заменить вторым параметром вызываемого метода. (Например Aero()->get_option('catch_errors', E_ALL, 'error_handler') превращается просто в E_ALL.)
Tags:
Hubs:
+48
Comments 43
Comments Comments 43

Articles