Does die () завершает сеанс в PHP?

Если я выполню:

die(); 

Будет ли это также эффективно

 session_write_close(); 

Потому что смерть останавливает весь процесс?

Solutions Collecting From Web of "Does die () завершает сеанс в PHP?"

Нет. Как вы можете видеть на странице PHP: http://www.php.net/manual/en/function.exit.php (поскольку die эквивалентен выходу )

Функции выключения и деструкторы объектов всегда будут выполняться, даже если вызывается exit.

НО, session_write_close НЕ является отключенной функцией. Он не будет работать, если вы «умрете». Предлагаю вам посмотреть session_register_shutdown . Это зарегистрирует session_write_close () как функцию выключения, и в этом случае он будет работать на «die».

Дополнительная информация: http://www.php.net/manual/en/function.session-register-shutdown.php

die и exit эквивалентны. Из документов:

Завершает выполнение скрипта. Функции выключения и деструкторы объектов всегда будут выполняться, даже если вызывается exit.

Таким образом, php по-прежнему будет выполнять процедуру очистки. В любом случае, если вы хотите сделать что-то обычное при выводе сценария, вы можете зарегистрировать функцию выключения с помощью register_shutdown_function .

 function shutdown() { //Some custom clean-up, logging and so on } register_shutdown_function('shutdown'); 

Примечание. Если вы зарегистрируете свою функцию выключения, она также будет вызвана при возникновении фатальной ошибки .