В чём различия между die() и exit() в PHP?

В чём заключаются различия между функциями die() и exit() в PHP? Разве их функционал не идентичный?


Ответы (2 шт):

Автор решения: Vadizar

Хотя функции die() и exit() действительно эквивалентны и в PHP прекращают выполнение текущего скрипта, в них есть кардинальное отличие:

  • die() закрывает соединение;
  • exit() не закрывает соединение.

Пример:

die():

<?php
    header('HTTP/1.1 304 Not Modified');
    die();
?>

exit():

<?php
    header('HTTP/1.1 304 Not Modified');
    exit();
?>

Ответ сервера:

exit():

HTTP/1.1 304 Not Modified 
Connection: Keep-Alive 
Keep-Alive: timeout=5, max=100

die():

HTTP/1.1 304 Not Modified 
Connection: close
→ Ссылка
Автор решения: vp_arth

Нет никакой разницы, die и exit — эквивалентные конструкции.


die — псевдоним exit для пользователей пришедших из Perl.

введите сюда описание изображения

Оно и понятно, парсер парсит оба токена одинаково: php-src

→ Ссылка