tutorials.de Buch-Aktion 05/2012
  • PHP Badword Funktion

    Hallo Community,

    mir ist heute aufgefallen das es in den Tutorials keine Badword Function gibt. Also habe ich mich mal dran gemacht selber eine zu schreiben und diese der breiten Community zu gute kommen zu lassen

    Wir brauchen im endeffekt zwei Dateien :

    1. Badword.txt

    Code :
    1
    2
    3
    
    blödmann
    sack
    blödsack

    Wie Ihr seht ist es eine normale .txt Datei wo pro Reihe ein Wort steht. Diese Datei ist natürlich beliebig erweiterbar.

    Als nächstes brauchen wir eine PHP Datei

    2.boese.php

    PHP-Code:
    <?php
    $original
    ="Dieser Blödmann ist so ein Sack. Also ist er ein Blödsack";

    function 
    badwords($text,$badlist)
    {
        
    $badwort=file($badlist);
            foreach (
    $badwort as $wort)
                {
                    
    $text str_ireplace(trim($wort),str_repeat('*'strlen($wort)), $text);
                }
            return 
    $text;
    }

    $badlist="badwords.txt";
    $text badwords($original$badlist);

    ?>
    <!DOCTYPE html>
    <html>
        <head>
           <title>Böse Wörter</title>
        </head>
       <body>
            <?php 
                
    echo "Original: ".$original."<br />";
                echo 
    "Zensiert: ".$text;
             
    ?>
       </body>
    </html>
    Als Ausgabe kommt dann sowas wie
    Original: Dieser Blödmann ist so ein Sack. Also ist er ein Blödsack
    Zensiert: Dieser ******** ist so ein ****. Also ist er ein ********

    Ich hoffe das wird einigen helfen.
    xxyy bedankt sich. 


    Kommentare 8 Kommentare
    1. Avatar von Wipeout
      Wipeout -
      Upps da ist mir grade ein fehler aufgefallen

      $zufall=mt_rand(0, count($zeichen)-1);
      die Zeile gehört da nicht rein
    1. Avatar von sheel
      sheel -
      Ist ausgebessert
    1. Avatar von Wipeout
      Wipeout -
      Firma dankt
    1. Avatar von Entwicklerpages
      Entwicklerpages -
      Einfach gemacht, tut aber was es soll, bis zueinem gewissen Punkt:
      Es gibt auch woerter, die badwords enthalten. Wie waere es mit ner Whitelist?
    1. Avatar von Wipeout
      Wipeout -
      Das Script soll ja nur ein Anstoss sein wie man sowas machen kann. Was im endeffekt jeder daraus macht bleibt ja jedem selber überlassen.
    1. Avatar von cheesi
      cheesi -
      Die Ausgabe kann und darf so nicht stimmen
      Da musst beim echo schon auch die Funktion anwenden
    1. Avatar von ComFreek
      ComFreek -
      @cheesi: Ja, das hast du Recht! Ich habe es gerade für Wipeout korrigiert
    1. Avatar von Wipeout
      Wipeout -
      Och menno Na ja war mein erstes tut
      Ich bedanke mich für die fehler bereinigung
    Kommentare Kommentar schreiben

    Klicke hier, um dich anzumelden

    Wie heißt die Bundeskanzlerin der BRD mit Nachnamen? Angela...