janson
@janson
PHP-разработчик

Что используете для прерывания выполнения программы на PHP?

Как-то сложилось, что сам всегда использую exit(). Но очень часто встречаю в различных скриптах, продуктах написанных на PHP, использование die() для тех же целей. Соотношение того и другого — примерно одинаковое.

Согласно документации die() — полный синоним для exit(), но любопытны предпосылки использования той или иной функции.
  • Вопрос задан
  • 6033 просмотра
Пригласить эксперта
Ответы на вопрос 8
НИ ТО, НИ ДРУГОЕ… (если, конечно, вам не надо выдать код).

Бросайте исключение.
Ответ написан
Использую exit для указания окончания выполнения скрипта в мастер-файле.
Причина проста: exit — выход; die — умереть.
У меня как-то окончание выполнения скрипта ассоциируется с выходом, а не смертью.
Ответ написан
Комментировать
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
die имеет одноотличие — возможность вывода «посмертных данных». Ну тобиш можно как аргумент подать строку (сообщение об ошибке, что-то для дебага...) и посмотреть. Если перед завершением работы скрипта выводить ничего не надо (имеется в виду непосредственно перед) — то можно использовать exit(). А так логично сократить 2 строки кода в одну.
Ответ написан
@skvot
Зависит от объема скрипта. В больших проектах исключения, в одноразовых скриптах die(). exit() в консольных приложенниях.
Ответ написан
Комментировать
SharkyFLY
@SharkyFLY
я как то по привычке всегда die() использую…
Ответ написан
Комментировать
charon
@charon
в рабочей программе стараюсь перехватить ошибку, записать в лог и закончить exit(0). В сервисных скриптах в последнее время кидаю исключение и иногда перехватываю его, вывожу на экран и делаю exit().
Ответ написан
Комментировать
@shagguboy
постепенно перехожу на исключения. там стандартное сообщение выдает больше отладочной информации
Ответ написан
Комментировать
Ogra
@Ogra
Использую die. Наверное, у меня маньячные наклонности.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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