diff options
author | Noah Heck <myesain84@gmail.com> | 2014-05-18 18:19:53 -0600 |
---|---|---|
committer | Noah Heck <myesain84@gmail.com> | 2014-05-18 18:19:53 -0600 |
commit | 741b861a827d6d1de921f1257b019ea1837373dd (patch) | |
tree | 6d41ea73685f16c242c0b5453a5d1650ad8d7a7b | |
parent | 360f4f03f025045a5aa2e7e77712ec071cc28309 (diff) | |
parent | d1b4b6c4d471b56c0af81fb00d291397dc143a5f (diff) | |
download | E_PDOStatement-741b861a827d6d1de921f1257b019ea1837373dd.zip E_PDOStatement-741b861a827d6d1de921f1257b019ea1837373dd.tar.gz E_PDOStatement-741b861a827d6d1de921f1257b019ea1837373dd.tar.bz2 |
Merge pull request #1 from noahheck/nh/namedParametersAsArgumentsv1.1
Updated to allow named key => value params as input parameters
-rw-r--r-- | E_PDOStatement.php | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/E_PDOStatement.php b/E_PDOStatement.php index 8540bdd..87d331f 100644 --- a/E_PDOStatement.php +++ b/E_PDOStatement.php @@ -114,10 +114,15 @@ class E_PDOStatement extends \PDOStatement */ if (is_array($inputParams) && $inputParams !== array()) { - foreach ($inputParams as $replValue) + ksort($inputParams); + foreach ($inputParams as $key => $replValue) { - $replValue = $this->_prepareValue($replValue); - $testQuery = preg_replace("/\?/", $replValue, $testQuery, 1); + $key = (is_numeric($key)) ? "\?" : $key; + + $testParam = "/" . $key . "/"; + $replValue = $this->_prepareValue($replValue); + + $testQuery = preg_replace($testParam, $replValue, $testQuery, 1); } } |