标签:
<?php //语法错误 //运行时的错误 //逻辑错误 //php的错误报告级别 // display_errors; // ini_set("display_errors", "On"); // error_reporting(); // error_reporting = E_ALL &~ E_NOTICE; //除了什么以外 error_reporting(0); //屏蔽系统的错误信息 function error_handler($errLevel, $errMsg, $errFile, $errLine){ switch($errLevel){ case E_NOTICE; case E_USER_NOTICE; $errType = "notice"; break; case E_WARNING; case E_USER_WARNING; $errType = "warning"; break; case E_ERROR; case E_USER_ERROR; $errType = "error"; break; default: $errType = "UnKnown"; } printf("错误的级别为:%s,错误的信息为:%s,发送在%s的%s行", $errLevel, $errMsg, $errFile, $errLine); } set_error_handler("error_handler"); //用这个函数来调用自己定义错误函数 // echo $err; //如何屏蔽这些系统的错误级别信息 echo 3/0; trigger_error("这是一个自定义的错误", E_USER_ERROR); //用户自定义一个错误 ?> <?php /* 写错误日志 先配置php.ini: error_reporting = E_ALL display_errors = Off log_errors = On log_errors_max_log = 1024 error_log = G:/myerror.log //去除前面的分号就是开启 */ error_log("这是一个错误信息"); //用这个函数,就可以向我们配置好的日子文件中发送错误信息 ?> <?php //try{}catch(){}抛出异常学习 //创建可抛出一个异常的函数 function checkNum($number){ if($number>1){ throw new Exception("Value must be 1 or below"); } return true; } //在 "try" 代码块中触发异常 try{ checkNum(2); //这时候会抛出一个异常,这个异常将会被下面的catch捕获 //如果没有异常,返回的就是true,就会执行下面的代码 //如果异常被抛出,那么下面一行代码将不会被输出,跳到catch()捕获这个异常 echo ‘If you see this, the number is 1 or below‘; }catch(Exception $e){ //$e 是一个对象 //捕获异常 echo "<pre>"; print_r($e); echo "</pre>"; // echo $e->getCode(); echo ‘Message: ‘ .$e->getMessage(); } ?> <?php //再看一个实例 try{ $i = 5; if($i < 10){ throw new exception("$i must greater than 10"); //抛出异常 } }catch(Exception $e){ //捕获异常 // echo $e->getMessage(); throw new exception(‘errorinfo‘); } ?>
标签:
原文地址:http://www.cnblogs.com/htmlphp/p/5722592.html