-
-
/**
- * 自定义一个异常处理类
- */
- class MyException extends Exception
- {
- // 重定义构造器使 message 变为必须被指定的属性
- public function __construct($message, $code = 0) {
- // 自定义的代码
- // 确保所有变量都被正确赋值
- parent::__construct($message, $code);
- }
- // 自定义字符串输出的样式
- public function __toString() {
- return __CLASS__ . ": [{$this->code}]: {$this->message}\n";
- }
- }
/**
- * 创建一个用于测试异常处理机制的类
- */
- class TestException
- {
- function __construct($str) {
- if($str == 1)
- throw new MyException('参数不能为1哦',1);
- elseif($str == 2)
- throw new MyException('参数不能为2哦',2);//抛出2个异常
- else
- echo $str;
- }
- }
try {
- $o = new TestException(2);
- } catch (MyException $e) { // 捕获异常
- echo $e;
- }
- ?>
-
复制代码
|