点击这里给我发消息 点击这里给我发消息

如何用PHP自定义错误处理函数

添加时间:2013-12-6
    相关阅读: 网站建设 网站制作 PHP 网站 建设 制作
 说的网站建设语言,大家都知道PHP,因为PHP网站建设已经无处不在,今天我们济南网站制作 要谈的是如何用PHP自定义错误处理函数,下边直接上代码了。
 
01.function myErrorHandler($errno, $errstr, $errfile, $errline){
02.if(!(error_reporting() &$errno)){return;}
03.switch ($errno){
04.case E_USER_ERROR:
05.echo "<b>My ERROR</b> [$errno] $errstr<br/>";
06.echo "错误行:$errline 在文件:$errfile之中<br/>";
07.echo " PHP版本: " .PHP_VERSION ." (" .PHP_OS .")<br/>";
08.break;
09.case E_USER_WARNING:
10.echo "<b>My WARNING</b> [$errno] $errstr<br/>";
11.break;
12.case E_USER_NOTICE:
13.echo "<b>My NOTICE</b> [$errno] $errstr<br />";
14.break;
15.default:
16.echo "Unknown error type: [$errno] $errstr<br />";
17.break;
18.}
19.return true;
20.}
21.
22.function trigger_test($age){//抛出错误的测试函数
23.if($age <= 0 || $age > 999) trigger_error("年龄不合法:$age岁", E_USER_ERROR);
24.if($age < 18) trigger_error("未成年:$age岁", E_USER_WARNING);
25.if($age > 40 && $age < 100) trigger_error("年龄稍大:$age岁", E_USER_NOTICE);
26.}
27.//如果只是简单统一地处理错误:
28.$errorHandler = set_error_handler("myErrorHandler");
29.trigger_test(1000);//会抛出一个error级的错误
30.
31.
32.function myError($errno, $errstr, $errfile, $errline){
33.print_r(func_get_args());
34.//具体处理方法
35.}
36.function myWarning($errno, $errstr, $errfile, $errline){
37.print_r(func_get_args());
38.//具体处理方法
39.}
40.
41.function myNtice($errno, $errstr, $errfile, $errline){
42.print_r(func_get_args());
43.//具体处理方法
44.}
45.
46.//如果要分别处理不同错误级别:
47.set_error_handler('myError',E_USER_ERROR);
48.set_exception_handler('myWarning',E_USER_WARNING);
49.set_exception_handler('myNtice',E_USER_NOTICE);
50.trigger_error('故意抛出个错误,还是很严重的哪一种!',E_USER_ERROR);
咨询热线:020-85648757 85648755 85648616 0755-27912581 客服:020-85648756 0755-27912581 业务传真:020-32579052
广州市网景网络科技有限公司 Copyright◎2003-2008 Veelink.com. All Rights Reserved.
广州商务地址:广东省广州市黄埔大道中203号(海景园区)海景花园C栋501室
= 深圳商务地址:深圳市宝源路华丰宝源大厦606
研发中心:广东广州市天河软件园海景园区 粤ICP备05103322号 工商注册