回答
使用register_shutdown_function()
:
http://docs.php.net/manual/en/function.register-shutdown-function.php
我不知道这是否会有所帮助,但你可以做的周围用另一种方式。
定义一个函数是这样的:
function terminate() // you might want to have parameters here to handle different cases
{
the_function_to_call();
die(); // or exit();
}
内。然后你的代码调用terminate()
,而不是die()
或exit()
。
类的__destruct()magic方法也在关闭时运行,除非您先取消设置类对象。尽管如果你只想注册一个正常的函数,Scharrels的响应更简单。请参阅http://docs.php.net/manual/en/language.oop5.decon.php#language.oop5.decon.destructor
在关机中运行脚本时需要注意的一件事情是,在将输出发送到浏览器后发生这种情况,因此您不会在屏幕上显示任何错误。确保记得将错误记录到文件中以进行关闭功能!
我知道__destruct()销毁对象,但这并不能帮助我。我有一个会话操作类。我不想在对象上使用__destruct()的原因是,因为我想在最后正确保存会话数据,并且在脚本处理期间可以销毁会话对象。无论如何;) – usoban 2009-08-08 13:12:48
如果这是会话数据管理,你应该看看session_set_save_handler() - 它有它自己的系统,一个写处理程序,用于在关机时保存会话数据,而无需自己注册关闭功能。请参阅http://php.net/manual/en/function.session-set-save-handler.php – simonrjones 2009-08-08 13:39:36
- 1. 调用终止/退出lua脚本(atexit()/清理函数)的函数
- 2. 为什么在脚本终止时不调用对象析构函数?
- 3. 函数终止时的Segfault
- 4. 终止前的调用函数C++
- 5. 使用phpexcel终止脚本
- 6. 超时终止函数
- 7. Powershell脚本调用函数
- 8. 调用脚本函数
- 9. 调用Java脚本函数
- 10. 当从Python子进程终止时的C++调用函数
- 11. 在程序终止时被调用的析构函数
- 12. curl_exec超时可以终止脚本?
- 13. nohup进程终止时触发脚本
- 14. 符合条件时终止脚本
- 15. 在进程终止时运行脚本
- 16. iPhone应用终止时调用哪个函数?
- 17. bash脚本SFTP退出终止脚本
- 18. 不断运行python脚本,通过终端调用函数
- 19. 终止另一个用户的脚本
- 20. 如何在Apache终止Flask进程时调用函数?
- 21. Python:终止一个导入的脚本而不会终止导入的脚本
- 22. 立即终止脚本
- 23. 终止一个IronPython脚本
- 24. Cron终止Python脚本?
- 25. Shell脚本终止通知
- 26. cron作业脚本终止
- 27. 脚本不终止立即
- 28. 终止从foo脚本
- 29. 如何终止Lua脚本?
- 30. 作为bash脚本的一部分调用gradle终止该脚本
谢谢,在google上没有找到任何东西,我没有想到它实际上有一个函数;) – usoban 2009-08-08 11:32:10
在php文档中的exit()函数链接到它。 PHP文档通常是寻找这类问题的最佳开始。 – Scharrels 2009-08-08 11:37:14