In diesem Tutorial möchte ich Ihnen erklären, wie Sie einzelne Zeichen oder Wörter innerhalb eines Strings suchen und mit einer eigenen Zeichenkette ersetzen. Dies kann beispielsweise hilfreich sein, wenn Sie das ausführen von HTML-Tags in einem Forum oder Gästebuch verhindern möchten, sodass die Tags zwar angezeigt, aber nicht ausgeführt werden.
Zur Lösung dieses Problems kann man die Funktion str_replace() verwenden. Der Funktion müssen drei Parameter übergeben werden. Der erste Parameter definiert den gesuchten Teil der Zeichenkette, welcher ersetzt werden soll. Dem zweiten Parameter übergibt man den neuen Teil der Zeichenkette, welcher den alten Teil ersetzen soll. Und mit dem dritten Parameter übergibt man den zu bearbeitenden String.
Die Syntax der Funktion str_replace():
str_replace(gesuchter_Teil, neuer_Teil, alte_Zeichenkette);
Beispiel:
<?php
/*
* Created on 28.12.2009 by Nico Schubert
*/
$alte_zeichenkette = 'Das ist der alte Text.';
$zeichen = 'alte';
$ersatz = 'neue';
$neue_zeichenkette = str_replace($zeichen,
$ersatz, $alte_zeichenkette);
echo 'Der Inhalt von $alte_zeichenkette:
'.$alte_zeichenkette.'<br>';
echo 'Der Inhalt von $neue_zeichenkette:
'.$neue_zeichenkette;
?>
Ausgabe:
Der Inhalt von $alte_zeichenkette: Das ist der alte Text.
Der Inhalt von $neue_zeichenkette: Das ist der neue Text.
Erklärung:
Die Variable $alte_zeichenkette enthält den Text, der bearbeitet werden soll. Das gesuchte Wort wird in der Variable $zeichen gespeichert und soll mit dem Wort aus der Variable $ersatz ersetzt werden. Diese drei Variablen werden nun der Funktion str_replace() übergeben. Da die Funktion die neue Zeichenkette als Ergebnis zurück liefert, wird das Ergebnis in einer neuen Variable mit der Bezeichnung $neue_zeichenkette gespeichert. Im letzten Schritt werden die alte und die neue Zeichenkette mit Hilfe von echo ausgegeben.
Weitere nützliche Artikel zu str_replace():