Вероломство
В /public/index.php есть некоторые константы
PHP:Теперь:
PHP:
// Всё нормально require_once APP . ‘views’ . D_S . ‘layouts’ . D_S . ‘infoPanel.php’; // ошибка в имени папки views — БРАУЗЕР выкидывает ошибку 500 require_once APP . ‘view’ . D_S . ‘layouts’ . D_S . ‘infoPanel.php’; // ТА ЖЕ ошибка в имени папки views — ошибка перехвачена обработчиком ошибок (файл не найден) всё нормально require APP . ‘view’ . D_S . ‘layouts’ . D_S . ‘infoPanel.php’;Почему при ошибке с require_once не ловится ошибка обработчиком, а выдаётся самим браузером?
miketomlin
Не браузером, а пыхом/require(_once). А должна ловиться? Где об этом написано? Как понять, что третья перехвачена? Может, до третьей команды просто дело не доходит?
Вероломство
@miketomlin это же не 3 команды — это три варианта одной и той же команды
вот с ошибкой в имени папки
PHP:
require_once APP . ‘view’ . D_S . ‘layouts’ . D_S . ‘infoPanel.php’;PHP:
require APP . ‘view’ . D_S . ‘layouts’ . D_S . ‘infoPanel.php’;
miketomlin
Одной и той же команды в одном и том же месте? Если да, то не знаю. Я вообще думал, что любые ошибки require(_once) не перехватываются.
Вероломство
лови отлов
PHP:
require_once $file; } }); Debug::run(true, false); new A(); PHP:
require_once $file; }); Debug::run(true, false); new A();В обоих случаях использовалась require_once, но во втором случае без проверки существования файла.
Вот и вопрос: почему в вопросе при отсутствии файла (ошибка в имени папки) обработчик не отловил ошибку require_once?
У меня обработчик написан на отлов всего: исключения, ошибки, фатальные ошибки, неперехваченные ошибки )))
Какая-то супернеперехваченная ошибка та, что в вопросе?
Вероломство
короче в чём прикол: браузер Edge выкидывает свою страницу 500, когда срабатывает обработчик ошибок, там я устанавливаю код 500 и подключаю лог-страницу, так вот браузер не даёт отобразить её, тупо клюёт на установку кода 500, пока У ПОДКЛЮЧАЕМОЙ ЛОГ-СТРАНИЦЫ используется require_once, после изменения в обработчике подключения на require всё нормально
ну и вообще мне посоветовали: если с функционалом страницы, то юзать require_once, если шаблоны-виды, то require
ну вот пока я в подключении ошибку не сделал, то и не замечал, всё на require_once работало