赛亿官网

PDOException.php 1.4KB

    <?php // +---------------------------------------------------------------------- // | ThinkPHP [ WE CAN DO IT JUST THINK ] // +---------------------------------------------------------------------- // | Copyright (c) 2006~2017 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; /** * PDO异常处理类 * 重新封装了系统的\PDOException类 */ class PDOException extends DbException { /** * PDOException constructor. * @param \PDOException $exception * @param array $config * @param string $sql * @param int $code */ public function __construct(\PDOException $exception, array $config, $sql, $code = 10501) { $error = $exception->errorInfo; $this->setData('PDO Error Info', [ 'SQLSTATE' => $error[0], 'Driver Error Code' => isset($error[1]) ? $error[1] : 0, 'Driver Error Message' => isset($error[2]) ? $error[2] : '', ]); parent::__construct($exception->getMessage(), $config, $sql, $code); } }