PHP异常处理

Posted 下页、再停留

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP异常处理相关的知识,希望对你有一定的参考价值。

首先要发生异常!

所谓的发生,指的是抛出一个异常!

然后是处理异常!

所谓的处理,就是一旦异常出现,要得到并处理这个异常,通常有两个阶段组成:监听和捕获!

流程:

1. 抛出异常 throw

2. 监听异常 try

3. 捕获异常 catch

注意:这里的异常,其实就是一个异常对象,这个对象必须是由系统预定义的异常类(类名为Exception)或者其子类实例化出来的!

示例:

<?php

echo "<meta charset=utf-8>";

class Goods{
    public function getPrice(){
        $price = $_GET[\'p\'];
        //如果价格小于0,则进行异常处理
        if ($price<0) {
            //实例化一个异常对象
            $e = new Exception($message = \'价格不能为负值!\');
            throw $e;    //抛出异常
        }else{
            echo $price;
        }
    }
}

//异常处理
try{
    //对代码进行监听
    $good = new Goods;
    $good->getPrice();
}catch(Exception $e){
    //捕获异常
    echo "错误信息为:".$e->getmessage()."<br/>";
    echo "错误代码为:".$e->getCode()."<br/>";
    echo "错误文件为:".$e->getFile()."<br/>";
    echo "错误行号为:".$e->getLine()."<br/>";
}

结果:传进参数p=22(大于零)显示正常,未抛出异常!

 

 

若传进参数p=-22(小于零),结果如下

下一篇会介绍PDO中异常处理

 

以上是关于PHP异常处理的主要内容,如果未能解决你的问题,请参考以下文章

使用片段中的处理程序时出现非法状态异常

PHP 异常处理

php异常处理

PHP 异常处理

php中的错误异常处理

PHP异常处理机制