Hallo dedlfix,
schlaue Idee, ich hätte jeden einzelnen Teilstring mit array_map oder einer for-Schleife in Hochkommata eingerahmt.
Aber eine gewisse innere Verarbeitung braucht man doch, denn Pit möchte ja folgendes NICHT:
«Apfel , Pflaume, Birne» --> «'Apfel ',' Pflaume',' Birne'»
sondern
«Apfel , Pflaume, Birne» --> «'Apfel','Pflaume','Birne'»
Dafür würde ich array_map vorschlagen wollen, das spart die eigene Schleife.
function putInQuotes($list) {
if (trim($list) == "") return $list;
return "'".
implode(array_map(function($p) { return trim($p); },explode(",", $list)),"','").
"'";
}
Wem die Schachtelung der Funktionsaufrufe zu wüst ist, hier die Version mit Temp-Veriablen und Kommmentaren
function putInQuotes($list) {
if (trim($list) == "") return $list;
// String an den Kommata auftrennen
$parts = explode(",", $list);
// Die einzelnen Teile mit trim() von Rand-Leerstellen befreien
$quotedParts = array_map(function($x) { return trim($x) }, $parts);
// Mit Hochkommas wieder zusammensetzen
return "'".implode($quotedParts, "','")."'";
}
Rolf
--
sumpsi - posui - clusi
sumpsi - posui - clusi