58 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
// +----------------------------------------------------------------------
 | 
						|
// | 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;
 | 
						|
    }
 | 
						|
}
 |