| // +---------------------------------------------------------------------- | |
| // | ThinkPHP [ WE CAN DO IT JUST THINK ] | |
| // +---------------------------------------------------------------------- | |
| // | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved. | |
| // +---------------------------------------------------------------------- | |
| // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) | |
| // +---------------------------------------------------------------------- | |
| // | Author: 麦当苗儿 <zuojiazi@vip.qq.com> <http://zjzit.cn> | |
| // +---------------------------------------------------------------------- | |
| namespace think\exception; | |
| use think\Exception; | |
| /** | |
| * ThinkPHP错误异常 | |
| * 主要用于封装 set_error_handler 和 register_shutdown_function 得到的错误 | |
| * 除开从 think\Exception 继承的功能 | |
| * 其他和PHP系统\ErrorException功能基本一样 | |
| */ | |
| class ErrorException extends Exception | |
| { | |
| /** | |
| * 用于保存错误级别 | |
| * @var integer | |
| */ | |
| protected $severity; | |
| /** | |
| * 错误异常构造函数 | |
| * @param integer $severity 错误级别 | |
| * @param string $message 错误详细信息 | |
| * @param string $file 出错文件路径 | |
| * @param integer $line 出错行号 | |
| * @param array $context 错误上下文,会包含错误触发处作用域内所有变量的数组 | |
| */ | |
| public function __construct($severity, $message, $file, $line, array $context = []) | |
| { | |
| $this->severity = $severity; | |
| $this->message = $message; | |
| $this->file = $file; | |
| $this->line = $line; | |
| $this->code = 0; | |
| empty($context) || $this->setData('Error Context', $context); | |
| } | |
| /** | |
| * 获取错误级别 | |
| * @return integer 错误级别 | |
| */ | |
| final public function getSeverity() | |
| { | |
| return $this->severity; | |
| } | |
| } | |