Groß- und Kleinschreibung bei str_replace

RageNo1

Erfahrenes Mitglied
Hallo,
ich möchte mittels str_replace() Wörter ersetzen:

PHP:
$zensiert = array("boeseswort", "boeserwolf");
$zensur = "*UPS*";
$comment = str_replace($zensiert, $zensur, $comment);

So weit so gut.
Nun möchte ich aber, das er dabei nicht auf die Groß- und Kleinschreibung
achtet und somit auch Wörter wie Boeseswort, bOeseswort usw ersetzt.

Hatte erst überlegt mit strtolower() zu arbeiten aber dann werden ja die
Kommentare immer in kleinschrift ausgegeben. Das ist etwas Blöd.

Gibt es noch einen Befehl der meine Überlegung realisiert?

Mfg Ragey
 
Klasse danke, nur gibt er mir diese Fehlermeldung zurück:
Code:
Fatal error: Call to undefined function: str_ireplace()

Hier der Code:
PHP:
$zensiert = array("hurensohn", "fick");
$zensur = "*UPS*";
$comment = str_ireplace($zensiert, $zensur, $comment);
 
Musste auch erstmal wieder suchen, bis es funktioniert (ja ich habe defizite in sachen preg_* ;) )

PHP:
<?
function wortfilter(&$text, &$aBadWords)
{
    return preg_replace("#(".implode("|",$aBadWords).")#ise", "str_repeat('*',strlen('\\1'))" ,$text);
}
$comment = "Hallo das ist ein Text, der BÖSE ist";
$filter=array('bÖse','wort2');
echo wortfilter($comment, $filter);

?>

Also beim testen gings hier.
Das ist aber nicht das gleiche was du willst. Der ersetzt nun das böse Wort durch die Anzahl der länge des Wortes als Sternchen.
Gruss
 
Zurück