php警告错误和致命错误,php 普通错误和致命错误捕获及处理

//禁止错误输出

error_reporting(0);

//设置错误处理器

set_error_handler('errorHandler');

register_shutdown_function('fatalErrorHandler');

class Test{

public function index(){

//这里发生一个警告错误,出发errorHandler

echo $undefinedVarible;

}

}

function errorHandler($errno,$errstr,$errfile,$errline){

$arr = array(

'['.date('Y-m-d h-i-s').']',

'http://www.baidu.com',

'|',

$errstr,

$errfile,

'line:'.$errline,

);

//写入错误日志

//格式 : 时间 uri | 错误消息 文件位置 第几行

error_log(implode(' ',$arr)."\r\n",3,'./test.txt','extra');

echo implode(' ',$arr)."\r\n";

}

//捕获fatalError

function fatalErrorHandler(){

$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:

errorHandler($e['type'],$e['message'],$e['file'],$e['line']);

break;

}

}

$test = new Test();

这里发生一个警告错误,被errorHandler 捕获

$test->index();

//发生致命错误,脚本停止运行触发 fatalErrorHandler

$test = new Tesdt();

$test->index();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值