PHP捕获Fatal error错误的方法_php实例

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'); 

时间: 2024-11-17 11:26:54

PHP捕获Fatal error错误的方法_php实例的相关文章

PHP捕获Fatal error错误的方法

这篇文章主要介绍了PHP捕获Fatal error错误的方法,使用register_shutdown_function来捕获Fatal error错误,需要的朋友可以参考下   Fatal error 一般是不需要捕获的, 但是在一个复杂的程序中, 如果偶然出现内存不足导致fatal error就难以处理了. 比如. fatal error 出在MySQL类中fetch的时候. 这个时候就很难定位到真正问题所在了. PHP异常处理中 可以通过set_error_handler来捕获. 但是却只能

destoon安装出现Internal Server Error的解决方法_php实例

很多朋友在安装destoon的时候出现"Internal Server Error"的错误提示信息,导致无法安装,其解决方法如下: 方法一.删除根目录下.htaccess文件,如果无效,请尝试方法二: 方法二.对于Liunx/Unix服务器,如果不支持0777属性,可修改根目录config.inc.php: $CFG['file_mod'] = 0777; 改为: $CFG['file_mod'] = 0755 ; 然后,FTP修改已经被系统自动修改为0777属性的目录和文件为0755

VB中的RasEnumConnections函数返回632错误解决方法_php实例

今天用了一下RasEnumConnections函数,发现MSDN上的例子是错误的. MSDN上RasEnumConnections的文档是这么说的: 复制代码 代码如下: To determine the required buffer size, call RasEnumConnections with lprasconn set to NULL. The variable pointed to by lpcb should be set to zero. The function will

微信公众号支付之坑:调用支付jsapi缺少参数 timeStamp等错误解决方法_php实例

这段时间一直比较忙,一忙起来真感觉自己就只是一台挣钱的机器了(说的好像能挣到多少钱似的,呵呵):这会儿难得有点儿空闲时间,想把前段时间开发微信公众号支付遇到问题及解决方法跟大家分享下,这些"暗坑"能不掉就不掉吧,要不然关键时刻出问题,真是让人急的焦头烂额.  双12客户的商城活动正在蓄势进行中,却有用户频频反馈说:支付不了,有问题,并截图如下:   当时问题感觉很奇怪,自己测试多次都ok啊,问题来了都赶紧解决吧,最终找到解决办法: 原因是程序中一个字符串变量被错误的设置为数字类型,解决

ioncube_loader_win_5.2.dll的错误解决方法_php实例

我们做项目的时候遇到了出现下边这些错误 requires the ionCube PHP Loader ioncube_loader_win_5.2.dll to be installed by the site administrator 我们现在主要的就是需要安装和找模块 下载地址http://www.ioncube.com/loaders.php在这里下载对应的模块 解压包后放到您的php安装目录里有个ext文件夹里 然后我们打开php.ini 加一行 zend_extension_ts=

codeigniter框架The URI you submitted has disallowed characters错误解决方法_php实例

CI中URI传递参数时,出现:The URI you submitted has disallowed characters.错误.原因:这是由于uri中存在CI不允许的字符. 解决办法: 在config/config.php文件中,找到 复制代码 代码如下: $config['permitted_uri_chars'] = 'a-z 0-9~%.:_/-i'; 在里面添加允许的字符.如我需要添加@符号,则可以这样: 复制代码 代码如下: $config['permitted_uri_chars

WinXP安装软件时出现NSIS ERROR错误解决方法

  WinXP安装软件时出现NSIS ERROR错误解决方法.虽然微软已经停止对WinXP的支持,还是有不少用户依然坚持使用XP,不过在安装软件的时候也会出现一些问题,近日有小伙伴说会出现NSIS ERROR的错误,这是什么原因造成的呢?又要如何解决,下面就让小编一一道来. 一.NSIS ERROR什么意思 系统错误提示英文为"installer integrity check has failed. common causes include incomplete download and d

Windows7下PHP开发环境安装配置图文方法_php实例

      操作系统:Windows 7 Ultimate       WEB服务器:IIS 6.1(内部版本7600).       数据库:MySql5.0.67       PHP版本:5.2.13       我还担心Win7下可能会不兼容,结果是一点问题都没有.    一.安装MySql数据库       MySql数据库在这里下载:http://www.mysql.com/downloads/ 客户端工具Navicat(导航猫)在这里下载:http://www.navicat.com

ThinkPHP提示错误Fatal error: Allowed memory size的解决方法_php实例

本文实例讲述了ThinkPHP提示错误Fatal error: Allowed memory size的解决方法.分享给大家供大家参考.具体分析如下: 如果你的ThinkPHP提示你:致命错误(Fatal error: Allowed memory size),根据网上说的提高服务器可使用内存,我觉得都不是好的解决办法.麻烦也没必要.因为这是ThinkPHP本身存在BUG. 错误提示:Fatal error: Allowed memory size of 1073741824 bytes exh