// +---------------------------------------------------------------------- declare (strict_types=1); namespace think; /** * 异常基础类 * @package think */ class Exception extends \Exception { /** * 保存异常页面显示的额外Debug数据 * @var array */ protected $data = []; /** * 设置异常额外的Debug数据 * 数据将会显示为下面的格式 * * Exception Data * -------------------------------------------------- * Label 1 * key1 value1 * key2 value2 * Label 2 * key1 value1 * key2 value2 * * @access protected * @param string $label 数据分类,用于异常页面显示 * @param array $data 需要显示的数据,必须为关联数组 */ final protected function setData(string $label, array $data) { $this->data[$label] = $data; } /** * 获取异常额外Debug数据 * 主要用于输出到异常页面便于调试 * @access public * @return array 由setData设置的Debug数据 */ final public function getData() { return $this->data; } }