PHP捕获Fatal error错误的方法
Fatal error 一般是不需要捕获的, 但是在一个复杂的程序中, 如果偶然出现内存不足导致fatal error就难以处理了.
比如. fatal error 出在MySQL类中fetch的时候. 这个时候就很难定位到真正问题所在了.
PHP异常处理中 可以通过set_error_handler来捕获. 但是却只能捕获 NOTICE/WARNING级别的错误, 对于E_ERROR是无能为力的.
register_shutdown_function 能解决set_error_handler的不足.
通过此函数注册好程序结束回调函数, 就可以捕获平时捕获不到的错误了. 再通过 error_get_last 对错误进行判断. 就容易找出难以定位的问题了.
function shutdown_function()
{
$e = error_get_last();
print_r($e);
}
register_shutdown_function('shutdown_function');
- 解决fatal:remote error:You can''t push to git://github.com/username/*.git问题的办法
- 解决PHP程序运行时:Fatal error: Maximum execution time of 30 seconds exceeded in的错误提示
- PHP中使用register_shutdown_function函数截获fatal error示例
- ThinkPHP提示错误Fatal error: Allowed memory size的解决方法
- php运行提示:Fatal error Allowed memory size内存不足的解决方法
- Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 2611816 bytes)
- php使用ZipArchive提示Fatal error: Class ZipArchive not found in的解决方法
- Windows平台的 PHP 报错 Fatal error: Class COM not found in 的解决方法
- PHP中Fatal error session_start()错误解决步骤
- Fatal: the Postfix mail system is already running 解决办法
相关文章
Laravel框架Eloquent ORM新增数据、自定义时间戳及批量赋值用法详解
这篇文章主要介绍了Laravel框架Eloquent ORM新增数据、自定义时间戳及批量赋值用法,结合实例形式详细分析了Laravel框架Eloquent ORM通过模型新增数据、时间戳设置、批量赋值模型、Create新增等相关使用方法,需要的朋友可以参考下2019-12-12Kindeditor编辑器添加图片上传水印功能(php代码)
这篇文章主要为大家详细介绍了Kindeditor编辑器加图片上传水印功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2017-08-08
最新评论