自定义 php 错误捕获代码
自定义 php 错误捕获代码
anziguoer 发表于2年前
自定义 php 错误捕获代码
  • 发表于 2年前
  • 阅读 98
  • 收藏 3
  • 点赞 0
  • 评论 0

腾讯云 新注册用户 域名抢购1元起>>>   

摘要: 自定义 php 错误捕获代码, register_shutdown_function(), set_error_handler()
<?php
/**
 * @Author: yangyulong
 * @Date:   2015-12-28 22:09:22
 * @Last Modified by:   yangyulong
 * @Last Modified time: 2015-12-28 22:48:49
 */
error_reporting(0);
//注册错误捕捉函数
register_shutdown_function('jd_fatal_error');

//注册错误处理函数
set_error_handler('jd_error_handler');

function jd_fatal_error(){
	if ($e = error_get_last()) {
		switch ($e['type']) {
			case E_ERROR:
			case E_PARSE:
			case E_CORE_ERROR:
			case E_COMPILE_ERROR:
			case E_USER_ERROR:
			//所有测错误类型都用下面的函数同意捕获 
				jd_error_handler($e['type'], $e['message'], $e['file'], $e['line']);
			break;
		}
	}
}

/**
 * 捕获错误的函数
 *
 * @method jd_error_handler
 *
 * @param  [type]           $type    [description]
 * @param  [type]           $message [description]
 * @param  [type]           $file    [description]
 * @param  [type]           $line    [description]
 *
 * @return [type]                    [description]
 */
function jd_error_handler($type, $message, $file, $line){
	echo '<b>'.$type.':'.$message.' in '.$file.' on '.$line. ' line .</b><br />';
}

print_r(xx());

// print_r(debug_backtrace());
// print_r(debug_print_backtrace());



共有 人打赏支持
anziguoer
粉丝 26
博文 71
码字总数 33826
×
anziguoer
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: