ich seh auch nur die callback-methode mit einem static index, der erhöht wird.
Hallo,
wie könnte ich folgendes Problem am elegantesten lösen: ich habe einen String mit n gleichen Zeichen, die ersetzt werden sollen. Dabei soll bei jedem gefundenen Zeichen der nächste Wert aus einem Array verwendet werden.
Also etwa so: "Hallo, das ? ein ? zum testen". Jetzt soll jedes ? mit dem nächsten Wert aus einem Array ersetzt werden.
array( "ist", "Satz" );
Als Ergebnis käme dann "Hallo, das ist ein Satz zum testen" heraus. Ich habs zuerst mit preg_replace_callback versucht, wo ich dann in der Callbackfunktion einen Index inkrementiere, um den nächsten Wert aus einem Array zu lesen. Allerdings ist das ziemlich hässlich, da sich das ganze in einer Klasse abspielt und ich da mit create_function eine anonyme Funktion erstellen muss. Gibt's da eine elegantere Funktion?
Danke!
Wer sabotiert eigentlich ständig meine Signatur?
ich seh auch nur die callback-methode mit einem static index, der erhöht wird.
TYPO3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer
Hmm, also funktionieren tut's. Ich schau jetzt mal ob das noch optimaler geht, wenn ich das über explode() löse weil ich hier mit globals fummeln muss und das passt mir nicht recht ins Konzept![]()
Wer sabotiert eigentlich ständig meine Signatur?
vll auch so eine Lösung
PHP-Code:$s=explode('?',$text);
$i=0;
foreach($s as $part) {
$out .= $part.$replace[$i++];
}
TYPO3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer
Danke!
Wer sabotiert eigentlich ständig meine Signatur?
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)