Wörter zensieren (Badwords-Funktion)

Status
Für weitere Antworten geschlossen.

Larz

Well-known member
[PHP] Wörter zensieren (Badwords-Funktion)

Die meisten kennen es aus Foren oder Gästebüchern ( wie FSB ^^ ):
Eine kleine Funktion, die gerade Verwendung in Gästebüchern und Foren findet, ist diese hier:
Badwords, meint nicht mehr, als das vorgegebene "schlechte" Wörter durch Sternchen (*) ersetzt werden.
In der Funktion wird bestenfalls "case-insensitive" gehandelt, heißt, dass keine Rücksicht auf Groß- und Kleinschreibung genommen wird. Leider funktioniert das nicht auf allen Servern.


PHP:
Script - badwords.php  

<?php
// Definition der Badwords außerhalb der Funktion
$badwords = array('Porno', 'depp', 'doof');

function badwords($text) {
  global $badwords;
  foreach($badwords as $b) {
      // replace
    $r = $b[0].str_repeat("*", strlen($b)-2).$b[strlen($b)-1];
    if(function_exists("str_ireplace")) {
      $text = str_ireplace($b, $r, $text);
    } else {
        $text = str_replace($b, $r, $text);
      }
  }
  return $text;
}
$text = "Wer anderen einen Porno dreht, 
        hat ein Pornodrehgerät.";
echo badwords($text);
?>
 
Status
Für weitere Antworten geschlossen.

Beliebte Schlagwörter

Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden.
Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.

Zurück
Oben Unten