Sian 发表于 2016-1-3 22:48:19

PHP异常处理自定义异常类简单实现

<?php
      // 设置问题直接在当前页面打印
      set_error_handler(function($type, $message, $file, $line){
                echo "<pre><font color='red'>第{$line}行,$message</font></pre>";
      });
               
      // 自定义异常类,承继自系统异常Exception类
      class SAException extends Exception{
                // 重写构造方法,注意一定要先调用父类的构造方法
                function __construct($message){
                        parent::__construct($message);
                }
                function change(){
                        echo "换上备胎,继续开车上班<br/>";
                }
      }
      echo "早上起床<br/>";
      // 试着执行try中的代码,如果没有问题,跳过catch继续往后执行
      try{
                echo "开车上班<br/>";
                // 抛出异常,将异常对象转给catch中的Exception类
                throw new SAException("车子爆胎");
                // 后续的代码不再执行,直接跳转到catch中
                echo "路况很好<br/>";
      }catch(SAException $e){
                // Excetion类中的getmessage()方法获取异常消息
                echo $e->getmessage()."<br/>";
                $e->change();
      }
      echo "到公司开始工作<br/>";执行结果:
早上起床
开车上班
车子爆胎
换上备胎,继续开车上班
到公司开始工作
相关链接:http://www.yusian.com/thread-11051-1-1.html
页: [1]
查看完整版本: PHP异常处理自定义异常类简单实现