zoukankan      html  css  js  c++  java
  • PHP异常处理

    1、什么是异常处理?

      处理不正常的状态、处理错误

    2、为什么使用异常处理?

      异常处理可以帮助我们更加智能的处理错误

    3、什么时候使用异常处理?

      使用PDO连接数据库的时候会使用异常处理

    4、如何使用异常处理?

      1)异常处理类:Exception

        方法:

          getMessage() 获得异常信息

          getCode() 获得异常号

      2)异常处理类可以进行拓展继承

      3)捕获多个异常,要将Exception捕获放在最后

    /*
    try{
        尝试执行第一个业务
        如果业务发生异常,将异常抛出
        若发生异常则第一个业务的后续将不再执行
        .....
    }catch(Exception $e){
        处理异常
    }
    
    第二个业务
    */
    
    try{
        echo  "闹钟响了,该起床了<hr>"; 
    
        //$f=true;
        $f=false;    
        if(!$f){
            //将异常抛出
            throw new Exception("没起来",1);
        }
        
        //如果发生异常,该代码不会再执行
        echo "刷牙,洗脸...<hr>";   
    }catch(Exception $e){
    
        //处理异常
        echo "异常信息:".$e->getMessage()."<hr>";
        echo "异常号:".$e->getCode()."<hr>";
        echo "抛出异常的文件路径:".$e->getFile()."<hr>";
        echo "抛出异常的所在行:".$e->getLine()."<hr>";
    
    }
    
    echo "上班去了";
    //对默认异常类Exception进行拓展
    class MyException extends Exception{
        public function __toString(){
            return serialize($this);
        }
        public function wc(){
            echo "蹲了个厕所<hr>";
        }
    }
    
    try{
        echo  "闹钟响了,该起床了<hr>"; 
    
        $f1=true;
        //$f1=false;    
        if(!$f1){
            //将异常抛出
            throw new MyException("没时间蹲厕所",0);
        }
        echo $e=new MyException;
        echo "<hr>";
        echo $e->wc();
        echo "刷牙,洗脸...<hr>"; 
        //$f2=true;
        $f2=false;
        if(!$f2){
            //将异常抛出
            throw new Exception("没起来",1);
        }
        echo "吃早餐<hr>";
    }catch(MyException $e){
    
        //处理异常
        echo "异常信息:".$e->getMessage()."<hr>";
        echo "异常号:".$e->getCode()."<hr>";
        echo "抛出异常的文件路径:".$e->getFile()."<hr>";
        echo "抛出异常的所在行:".$e->getLine()."<hr>";
    
    }catch(Exception $e){
    
        //处理异常
        echo "异常信息:".$e->getMessage()."<hr>";
        echo "异常号:".$e->getCode()."<hr>";
        echo "抛出异常的文件路径:".$e->getFile()."<hr>";
        echo "抛出异常的所在行:".$e->getLine()."<hr>";
    
    }
    
    echo "上班去了";
  • 相关阅读:
    Unity3D Shader入门指南(二)
    Unity3D Shader入门指南(一)
    NGUI 减少drawcall规则
    linux系统date命令详解
    使用Installutil安装系统服务方法
    各大视频网站广告屏蔽代码
    C#--无边框窗体实现拖动、最大化、最小化、关闭(转)
    C# 如何在winform窗体自定义一个扁平化控件(转)
    C# winform 界面美化技巧(扁平化设计) (转)
    VC6插件安装--Unable to register this add-in because its DllRegisterServer returns an error (转)
  • 原文地址:https://www.cnblogs.com/zhouwanqiu/p/9589093.html
Copyright © 2011-2022 走看看