Scripts
Scheldwoordenfilter
Ik had dit net even nodig, dus ik dacht, laat ik dit maar even posten... Simpel te gebruiken: Bij onderstaand voorbeeld worden alle niet toegestane woorden vervangen door een * per karakter. Bij onderstaand voorbeeld worden alle niet toegestane woorden vervangen door een opgegeven teken in de tweede parameter (in dit geval '+') per karakter. Het is getest met error_reporting(E_ALL); ;-) Voor de slimmerds onder ons die denken dat het geript is van Sitemasters.be -> Ik heb het gewoon daar ook gepost (Murfy @ Sitemasters == Maarten @ PHPhulp) :)
scheldwoordenfilter
<?php
function scheldwoorden($tekst,$vervangteken='*') {
// Hier een klein arsenaal eventueel verboden woorden,
// je kan die uitbreiden zolang je fantasie rekt.
$woorden = array ("woord1","woord2","enzovoort eh");
// Aantal woorden tellen
$aantal = count($woorden);
// Array aflopen
for ($a=0;$a<$aantal;$a++) {
// Bepalen hoeveel sterretjes (of ander opgegeven teken) er nodig zijn
// door het aantal letters te tellen
$sterretjes = strlen($woorden[$a]);
// Standaardwaarde aan $vervanging geven,
// zodat error_reporting(E_ALL); niet zaagt over
// onbestaande variabelen...
$vervanging = '';
// Replacements aan elkaar kleven
for($i=0;$i<count($sterretjes);$i++) {
$vervanging .= $vervangteken;
}
// Vervang het verboden woord door zijn sterretjes
$tekst = eregi_replace($woorden[$a], '***', $tekst);
}
// Geef de gefilterde tekst weer.
return $tekst;
}
?>
Reacties
0