Welkom op de Nederland Computer Kennisnetwerk!  
 
Zoeken computer kennis
Home Hardware Netwerken Programmering Software Computerstoring Besturingssysteem
Computer Kennis >> Programmering >> PHP /MySQL Programmering >> Content
Slechte Word Filters in PHP
PHP is een scripttaal die je helpt proces -en HTML- uitgang voor gebruikers , dus is het zinvol om het te gebruiken om een ​​" slecht woord " filter te maken . Het proces van het creëren van een " slecht woord " filter in PHP is heel simpel . U een " slecht woord " lijst , scheiden de inhoud worden gefilterd in woorden , vergelijken elk woord tegen de lijst en verwijderen of vervangen iets anders voor elke wedstrijd . Het meest uitdagende onderdeel van het creëren van een " slecht woord " filter in PHP is om de juiste data structuur en algoritme , zodat uw code wordt uitgevoerd zo snel en efficiënt mogelijk te kiezen . Maak Bad Word List

Maak een " slecht woord " lijst die alle woorden die je niet wilt weergeven op het scherm bevat . Typ elk woord in een databestand , een woord per regel . Bepaal wat u wilt vervangen voor elk slecht woord , bijvoorbeeld " ***** " of " " of " . -------- ' Plaats de substitutie in een variabele later moet worden gebruikt bij het filteren van slechte woorden . Bijvoorbeeld : ?

Store Bad Word List in een array

Lees de " slecht woord " lijst van schijf en bewaar deze op een datastructuur . Je zou kunnen overwegen om een array en opslaan van elk ' slecht woord " als een element van de array , zoals :

$ bad_word [ 0 ] = " thisbadword " ; $ bad_word [ 1 ] = " thatbadword " ,,

Hoewel dit soort structuur zal werken , het is inefficiënt , want je moet de hele array van " slechte woorden " voor elk woord dat je tegen de lijst te controleren doorzoeken . Voor een meer haalbare manier van het vervullen van deze taak , maak een hash table . Ontwerp een associatieve array en opslaan elke " slecht woord " als de array key . Iets toe te wijzen als de waarde , zoals " 1 " of " true . " Om te bepalen of een woord in de lijst staat , hoeft u alleen maar te verwijzen naar de array key , in plaats van zoeken het gehele array. Bijvoorbeeld :

$ bad_words = array ( ) ; $ fp = fopen ( " badwordsfile.txt " , " r" ) or die ( " Kon scheldwoorden bestand niet openen ! " ) ; Terwijl ( $ woord = fgets ( $ fp ) ) { $ bad_words [ $ woord ] = 1 ; }
Verkrijg de inhoud naar Filter

Haal de inhoud dat u wilt filteren . De inhoud zou kunnen worden door de gebruiker gemaakte opmerkingen van een HTML-formulier , een document op de harde schijf of zelfs een webpagina van het internet . Bewaar de inhoud in een enkele variabele . Bijvoorbeeld :

$ to_do = file_get_contents ( " http://badmusiclyricswithprofanity.com " ) ;
Uittreksel Woorden Van de inhoud

Break
de ongefilterde inhoud in woorden door scheiding van de woorden in de ruimtes die hen scheiden . Gebruik de functie PHP " ontploffen " om de ongefilterde snaar te zetten in een array van woorden die je kan individueel filteren . Bijvoorbeeld :

$ words_to_filter
= explode ( " " , $ to_do ) ;
filter Bad Words

Doorloop de array van woorden en laat elk woord tegen de array met de " slecht woord " lijst . Als u de array controleren door te kijken om te zien of de array waarde is een, zult u een foutmelding elke keer dat u probeert toegang te krijgen tot een woord dat niet in de lijst , omdat de array index niet bestaat genereren . Gebruik in plaats daarvan de " isset " -functie om te bepalen of het woord is in de array . Als er een match is , vervang het woord met de gekozen substitutie . Bijvoorbeeld :

foreach
( $ words_to_filter als $ woord = > $ teken ) { if ( isset ( $ bad_words [ $ woord ] ) ) { $ woord = $ vervanger ; } }

Monteer de tekst

Zet de tekst terug in een enkele variabele met de " imploderen " -functie - " . exploderen " het tegenovergestelde van het kost elke array waarde en doe het met tekens u aanwijzen , in ons geval , het is een ruimte. Echo van de resultaten van de gefilterde inhoud op het scherm. Bijvoorbeeld : ?

$ Gefilterd = implode ( " " , $ words_to_filter ) ; echo $ gefilterd ; >

Previous: Next:
  PHP /MySQL Programmering
·Hoe de Remote File Grootte op …
·PHP Tricks 
·Hoe om te controleren een PHP …
·Hoe maak je een PHP Informatie…
·Hoe te Hidden Fields in MySQL 
·Wat is een PHP -bestand? 
·Hoe om te doen Multiple Mailto…
·Hoe de inhoud van een externe …
·Hoe maak je een Zero verwijder…
  Related Articles
Hoe Word- documenten met behulp van VB6 …
Hoe Word- document creëren vanuit ASP 
Aan de slag Met behulp van VBA Met Micro…
VBA Tutorial voor Word 
Tutorial voor het toevoegen van Visual B…
Word Tutorials Met VB 
Hoe Word- documenten weergeven in . NET …
Hoe je Adobe Reader Run in een Word Macr…
Hoe kan ik een Word- document gebruiken …
  Programmering Articles
·Connection Pool Tutorial 
·Programmeren in MS Access 2007 
·Hoe maak je een Sequence in Oracle SQL C…
·Hoe kan ik Excel Gegevens naar MySQL 
·Hoe je tekst Vertical Mode Datagridview …
·Hoe kan ik een string in VBA Scheid 
·Hoe maak je een nieuw veld toevoegen in …
·Hoe kan ik Java inschakelen op mijn werk…
·Wat betekent Debugging Mean op de PC ? 
Copyright © Computer Kennis http://www.nldit.com