@FilatovNikita

Почему не срабатывает конструкция try catch?

Не могу понять почему не работает try catch в точке входа ! Вот сам исходник bfb74fe5d8b3456790ec6058c6a92684.png
Через переданный url у меня подключается нужный контроллер в автолоде я поставил проверку если !file_exists, то ловим исключение, вся суть в том, что этот код работает до тех пор, пока я в url не передам типа такого (localhost/For_nout/oop_blog/ssdsd---), а если например напишу в url так (localhost/For_nout/oop_blog/ssdsd), то исключение срабатывает. Заранее спасибо, не знаю в чем здесь подвох, буду рад подискутировать на эту тему !
  • Вопрос задан
  • 416 просмотров
Решения вопроса 1
@BorisKorobkov Куратор тега PHP
Web developer
если !file_exists, то ловим исключение

С точностью до наоборот. throw - это "кидать", а catch - "ловить"

этот код работает до тех пор, пока я в url не передам типа такого (localhost/For_nout/oop_blog/ssdsd---)

Так это не Exception, а Fatal error, он не ловится try-catch.
В new надо указывать валидное имя. Дефисы и прочие спецсимволы нельзя. $params0 надо предварительно почистить
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@stcmd04236
Потому что вы в любом случае пытаетесь загрузить не существующий файл. Выдаете исключение и потом пытаетесь загрузить файл не смотря на его существование. А исключение пытаетесь обработать после spl_auto_load_register.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
25 апр. 2024, в 10:42
150000 руб./за проект
25 апр. 2024, в 10:41
2000 руб./за проект
25 апр. 2024, в 10:25
2000 руб./за проект