码迷,mamicode.com
首页 > Web开发 > 详细

php自定义错误处理和try{}catch(){}学习

时间:2016-07-31 11:44:09      阅读:214      评论:0      收藏:0      [点我收藏+]

标签:

<?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‘); 
}

?>

 

php自定义错误处理和try{}catch(){}学习

标签:

原文地址:http://www.cnblogs.com/htmlphp/p/5722592.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!