From 8a80e4ec29bb03f9525a528cfedc3b43246871fa Mon Sep 17 00:00:00 2001 From: Neil Blakey-Milner Date: Wed, 20 Jul 2005 18:20:04 +0000 Subject: [PATCH] Add whereToString, converting an array of parameterised strings to a single parameterised string. --- lib/util/ktutil.inc | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/lib/util/ktutil.inc b/lib/util/ktutil.inc index 4e89aa2..3d2a3ac 100644 --- a/lib/util/ktutil.inc +++ b/lib/util/ktutil.inc @@ -101,7 +101,33 @@ class KTUtil { function requestValue($sKey, $mDefault = null) { return KTUtil::arrayGet($_REQUEST, $sKey, $mDefault); } - + + // {{{ whereToString + /** + * Convert an array of parameterised strings to a single + * parameterised string. + * + * Return null in case of an empty array. + */ + function whereToString($aWhere) { + $aStrings = array(); + $aParams = array(); + foreach ($aWhere as $oSomething) { + if (is_string($oSomething)) { + $aStrings[] = $oSomething; + } else if (is_array($oSomething)) { + $aStrings[] = $oSomething[0]; + $aParams = array_merge($aParams, $oSomething[1]); + } else { + return PEAR::raiseError("Weird WhereClause passed"); + } + } + if (count($aStrings) === 0) { + return null; + } + return array(join(" AND ", $aStrings), $aParams); + } + // }}} } // }}} -- libgit2 0.21.4