From 7c9b2079e8db59b7b4f8485cc2de7743b9ffaf1c Mon Sep 17 00:00:00 2001 From: yinggaozhen Date: Wed, 2 Aug 2017 21:23:37 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9Builder=E8=8B=A5=E5=B9=B2?= =?UTF-8?q?=E5=A4=84=E6=B3=A8=E9=87=8A=E9=94=99=E8=AF=AF=EF=BC=8C=E9=94=99?= =?UTF-8?q?=E5=88=AB=E5=AD=97=EF=BC=8C=E4=BB=A5=E5=8F=8A=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E4=B8=80=E5=A4=84=E5=9B=A0=E6=96=B9=E6=B3=95=E4=B8=8D=E5=AD=98?= =?UTF-8?q?=E5=9C=A8=E5=8F=AF=E8=83=BD=E5=AF=BC=E8=87=B4=E5=BC=82=E5=B8=B8?= =?UTF-8?q?=E7=9A=84=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- library/think/db/Builder.php | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/library/think/db/Builder.php b/library/think/db/Builder.php index d36bd468..41700d9f 100644 --- a/library/think/db/Builder.php +++ b/library/think/db/Builder.php @@ -11,6 +11,7 @@ namespace think\db; +use BadMethodCallException; use PDO; use think\Exception; @@ -46,7 +47,7 @@ abstract class Builder /** * 获取当前的连接对象实例 * @access public - * @return void + * @return Connection */ public function getConnection() { @@ -56,7 +57,7 @@ abstract class Builder /** * 获取当前的Query对象实例 * @access public - * @return void + * @return Query */ public function getQuery() { @@ -80,6 +81,7 @@ abstract class Builder * @param array $data 数据 * @param array $options 查询参数 * @return array + * @throws Exception */ protected function parseData($data, $options) { @@ -497,7 +499,7 @@ abstract class Builder /** * limit分析 * @access protected - * @param mixed $lmit + * @param mixed $limit * @return string */ protected function parseLimit($limit) @@ -549,7 +551,11 @@ abstract class Builder foreach ($order as $key => $val) { if (is_numeric($key)) { if ('[rand]' == $val) { - $array[] = $this->parseRand(); + if (method_exists($this, 'parseRand')) { + $array[] = $this->parseRand(); + } else { + throw new BadMethodCallException('method not exists:' . get_class($this) . '-> parseRand'); + } } elseif (false === strpos($val, '(')) { $array[] = $this->parseKey($val, $options); } else { @@ -654,7 +660,7 @@ abstract class Builder /** * 设置锁机制 * @access protected - * @param bool $locl + * @param bool $lock * @return string */ protected function parseLock($lock = false) @@ -728,6 +734,7 @@ abstract class Builder * @param array $options 表达式 * @param bool $replace 是否replace * @return string + * @throws Exception */ public function insertAll($dataSet, $options = [], $replace = false) { @@ -775,7 +782,7 @@ abstract class Builder } /** - * 生成slectinsert SQL + * 生成select insert SQL * @access public * @param array $fields 数据 * @param string $table 数据表 @@ -796,7 +803,7 @@ abstract class Builder /** * 生成update SQL * @access public - * @param array $fields 数据 + * @param array $data 数据 * @param array $options 表达式 * @return string */