str_replace
Ersetzt alle Vorkommen des Suchstrings durch einen anderen String
&reftitle.description;
mixedstr_replace
mixedsearch
mixedreplace
mixedsubject
intcount
Diese Funktion gibt einen String oder ein Array zurück, in dem alle
Vorkommen von search innerhalb von
subject durch den angegebenen
replace-Wert ersetzt wurden. Wenn Sie keine
ausgefallenen Ersetzungsregeln (wie Regular Expressions) benötigen, sollten
Sie immer diese Funktion anstelle von ereg_replace
oder preg_replace verwenden.
Seit PHP 4.0.5 kann jeder Parameter von str_replace
vom Type array sein.
Die PHP-Versionen vor PHP 4.3.3 enthalten einen Bug, der bei der
Verwendung von Arrays für search und
replace dazu führt, dass leeren
search-Indexe übersprungen werden, ohne dabei den
internen Zeiger innerhalb des replace-Arrays
ebenfalls weiter zu bewegen. Dies wurde in PHP 4.3.3 korrigiert. Alle
Skripte, die sich auf diesen Bug verlassen, sollten leere Suchwerte
entfernen, bevor diese Funktion aufgerufen wird, um die ursprüngliche
Verhalten zu imitieren.
Ist subject ein Array, erfolgt das Suchen
und Ersetzen für jeder Wert von subject,
und der Rückgabewert ist ebenfalls ein Array.
Sind search und replace
Arrays, nimmt str_replace je einen Wert beider Arrays
und verwendet diese zum Suchen und Ersetzen in
subject. Hat replace
weniger Werte als search, so wird ein leerer
String zum Ersetzen für den Rest der Werte verwendet. Ist
search ein Array und replace
ein String, dann wird dieser String für jeden Wert von
search angewandt. Das Gegenteil ist nicht sinnvoll.
str_replace-Beispiele
$bodytag = str_replace("%body%", "schwarz", "");
// Liefert: Hll PHP-Wlt
$vokale = array("a", "e", "i", "o", "u", "A", "E", "I", "O", "U");
$onlyconsonants = str_replace($vokale, "", "Hallo PHP-Welt");
// Liefert: Sie sollten taeglich Pizza, Bier und Eiscreme essen.
$phrase = "Sie sollten taeglich Fruechte, Gemuese und Ballaststoffe essen.";
$gesund = array("Fruechte", "Gemuese", "Ballaststoffe");
$lecker = array("Pizza", "Bier", "Eiscreme");
$newphrase = str_replace($gesund, $lecker, $phrase);
// Die Verwendung des count-Parameters ist ab PHP 5.0.0 möglich
$str = str_replace("ll", "", "good golly miss molly!", $count);
echo $count; // 2
?>
]]>
¬e.bin-safe;
Ab PHP 5.0.0 wird die Anzahl der gefundenen und ersetzten Suchbegriffe
(search) mittels count
zurück gegeben, der als Referenz übergeben wird. Vor PHP 5.0.0 ist dieser
Parameter nicht verfügbar.
Siehe auch
str_ireplace,
substr_replace,
ereg_replace,
preg_replace und
strtr.