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
Nog geen reacties.