如果我执行:
die();
Run Code Online (Sandbox Code Playgroud)
它是否也会有效地召唤
session_write_close();
Run Code Online (Sandbox Code Playgroud)
因为模具会停止整个过程吗?
小智 13
没有.正如您在PHP页面上看到的:http://www.php.net/manual/en/function.exit.php(因为die相当于exit)
即使调用exit,也将始终执行关闭函数和对象析构函数.
但是,session_write_close不是关闭函数.如果你"死",它就不会运行.我建议你看看session_register_shutdown.这会将session_write_close()注册为关闭函数,在这种情况下,它将在"die"上运行.
更多信息:http://www.php.net/manual/en/function.session-register-shutdown.php
终止脚本的执行.即使调用exit,也将始终执行关闭函数和对象析构函数.
所以php仍然会进行清理程序.无论如何,如果你想在脚本关闭时做一些自定义的事情,你可以使用注册关闭功能register_shutdown_function.
function shutdown()
{
//Some custom clean-up, logging and so on
}
register_shutdown_function('shutdown');
Run Code Online (Sandbox Code Playgroud)
注意:如果注册自定义关闭功能,则在发生致命错误时也会调用它.
| 归档时间: |
|
| 查看次数: |
3015 次 |
| 最近记录: |