12345678910111213141516171819202122232425262728293031323334353637383940 |
- <?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;
-
- /**
- * PDO异常处理类
- * 重新封装了系统的\PDOException类
- */
- class PDOException extends DbException
- {
- /**
- * PDOException constructor.
- * @access public
- * @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);
- }
- }
|