PHP捕获Fatal error错误的方法
2015-06-24 13:58
609 查看
这篇文章主要介绍了PHP捕获Fatal error错误的方法,使用register_shutdown_function来捕获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 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');
相关文章推荐
- PHP代码优化技巧大盘点
- PHP Socket编程起步
- PHP几个防SQL注入攻击自带函数区别
- 黄聪:Wordpress、PHP使用POST数据过大导致MySQL server has gone away报错原因分析
- 利用enterprisedt包实现FTP的操作
- 一步步搭建自己的轻量级MVCphp框架-(四)一个国产轻量级框架Amysql源码分析(3) 总进程对象
- 4. Laravel5学习笔记:Facade的运行机制
- VS2013开发调试PHP扩展
- php加密解密
- php 调用.net的webservice 需要注意的
- PHP isset()与empty()的使用区别详解
- 为什么做Web开发要选择PHP
- PHP获取上个月、下个月、本月的日期
- php 高并发解决方案(用于抢购)
- php中请求地址中参数的获取
- PHP数组与对象之间使用递归实现转换的方法
- php浮点型以及精度问题
- php计算多维数组中所有值总和的方法
- PHP定时执行任务的实现
- PHP GBK UTF8互转