Commit 8a80e4ec29bb03f9525a528cfedc3b43246871fa
1 parent
d1d3386b
Add whereToString, converting an array of parameterised strings to a
single parameterised string. git-svn-id: https://kt-dms.svn.sourceforge.net/svnroot/kt-dms/trunk@3404 c91229c3-7414-0410-bfa2-8a42b809f60b
Showing
1 changed file
with
27 additions
and
1 deletions
lib/util/ktutil.inc
| ... | ... | @@ -101,7 +101,33 @@ class KTUtil { |
| 101 | 101 | function requestValue($sKey, $mDefault = null) { |
| 102 | 102 | return KTUtil::arrayGet($_REQUEST, $sKey, $mDefault); |
| 103 | 103 | } |
| 104 | - | |
| 104 | + | |
| 105 | + // {{{ whereToString | |
| 106 | + /** | |
| 107 | + * Convert an array of parameterised strings to a single | |
| 108 | + * parameterised string. | |
| 109 | + * | |
| 110 | + * Return null in case of an empty array. | |
| 111 | + */ | |
| 112 | + function whereToString($aWhere) { | |
| 113 | + $aStrings = array(); | |
| 114 | + $aParams = array(); | |
| 115 | + foreach ($aWhere as $oSomething) { | |
| 116 | + if (is_string($oSomething)) { | |
| 117 | + $aStrings[] = $oSomething; | |
| 118 | + } else if (is_array($oSomething)) { | |
| 119 | + $aStrings[] = $oSomething[0]; | |
| 120 | + $aParams = array_merge($aParams, $oSomething[1]); | |
| 121 | + } else { | |
| 122 | + return PEAR::raiseError("Weird WhereClause passed"); | |
| 123 | + } | |
| 124 | + } | |
| 125 | + if (count($aStrings) === 0) { | |
| 126 | + return null; | |
| 127 | + } | |
| 128 | + return array(join(" AND ", $aStrings), $aParams); | |
| 129 | + } | |
| 130 | + // }}} | |
| 105 | 131 | } |
| 106 | 132 | // }}} |
| 107 | 133 | ... | ... |