Eigener Badwords-Filter mit PHP erstellen

Zuletzt aktualisiert: Donnerstag, 05. Januar 2017 Geschrieben von Jan Pionzewski

Mit PHP ist es möglich, einen eigenen Filter für unerwünschte Worte - einen so genannten "Badwords-Filter" - zu erstellen. Dieser Filter kann für Formulare in Foren und Gästebücher oder öffentliche Blogs benutzt werden. Die nicht erwünschten Wörter werden dann beim Absenden des Textes automatisch gefiltert und durch Sternchen ersetzt.

Im folgenden Abschnitt zeige ich dir, wie das funktioniert.

 

Eigenen Badwords-Filter erstellen

Alle Wörter, die im folgenden Script-Beispiel in das Array $Badwords genannt werden (in diesem Beispiel die Worte "text" und "gefiltert"), werden im ausgegebenen Text durch Sternchen ersetzt. Die Liste der nicht erwünschten Wörter kann dabei beliebig lang sein. Achte jedoch darauf, die Wörter in Anführungszeichen zu setzen und durch ein Komma zu trennen.


Wenn du auf deinem Webserver PHP in der Version 5 einsetzt, kannst du die Funktion str_replace auch mit str_ireplace ersetzen. Somit wird bei den zu filternden Worten nicht zwischen Groß- und Kleinschreibung unterschieden.


Code-Beispiel:

<?php

function BadwordFilter($Nachricht)
{
    $Badwords = array("text", "gefiltert");

    foreach($Badwords as $Badword)
    {
        $Nachricht = str_replace($Badword, str_repeat("*", strlen($Badword)), $Nachricht);
    }

    return $Nachricht;
}


$Nachricht = "Hier kommt der Text rein, der gefiltert werden soll.";
$Nachricht = BadwordFilter($Nachricht);

echo$Nachricht;

?>

 

 

 

Kommentar schreiben