From e580e035b402844e447c00bfb9065a9cb6bb9a27 Mon Sep 17 00:00:00 2001 From: prasad83 Date: Sat, 14 Nov 2015 19:17:04 +0530 Subject: [PATCH] Making writeSelectLimit friendly to PDO drivers. Executing prepared statement with values fails if limit values are not binded as integer. To overcome this making the limit friendly without adding placeholder can be very useful. --- src/Builder/Syntax/SelectWriter.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/Builder/Syntax/SelectWriter.php b/src/Builder/Syntax/SelectWriter.php index b124bfe..00fc33f 100644 --- a/src/Builder/Syntax/SelectWriter.php +++ b/src/Builder/Syntax/SelectWriter.php @@ -364,8 +364,12 @@ protected function writeSelectLimit(Select $select, array &$parts) $limit = ''; if ($mask !== '00') { - $start = $this->placeholderWriter->add($select->getLimitStart()); - $count = $this->placeholderWriter->add($select->getLimitCount()); + //$start = $this->placeholderWriter->add($select->getLimitStart()); + //$count = $this->placeholderWriter->add($select->getLimitCount()); + + // Make it friendly to PDO drivers (when prepared statements can be executed with values) + $start = intval($select->getLimitStart()); + $count = intval($select->getLimitCount()); $limit = "LIMIT {$start}, {$count}"; }