Hallo Liebe Community,
ich bin neu hier, hab aber über die Suche nichts "genaues" gefunden was zu meinem Thema passt. Ich hab glaub ich aber auch einfach nur nen Brett vorm Kopf :
Und zwar will ich einen String auf Bestimmte Wörter aus einer Txt
prüfen. Allerdings funktioniert lediglich immer der letze Wert, hängt also vermutlich irgendwie mit der schleife zusammen.
Die txt (ForbiddenWords.txt) sieht wie folgt aus:
Idiot
Test
Sonne
Trottel
Hier mein Code :
Code:
<?
$Name = "Trottel";
$array = file("ForbiddenWords.txt");
$ArrayLength=count($array);
for($i=0;$i<$ArrayLength; $i++)
{
if( preg_match("/$array[$i]/", $Name))
{
$Name = "Verboten ";
echo $Name;
}
else
echo "Passt ";
}
?>
Er ändert daraufhin das böse Wort in "Verboten" um.
So funktioniert es, wenn ich jedoch die Variable $Name in zB "Test" ändere klappt es nicht mehr. Nur mit dem letzten Eintrag in der txt.
Das Array wird auch richtig befüllt, habs via echo "$array[$i]" getestet....
aber wieso klappt nur das letzte ?
Hab schon einige Foren durchsucht aber irgendwie sind es andere probleme. mit Foreach funktioniert es übrigens genauso, also auch nur der letzte Wert :/
Also wenn einer was sieht woran es liegt wär ich sehr dankbar ^^
Es handelt sich übrigens um eine "Blacklist" für eine Highscore-Liste welche Strings nicht eingegeben werden dürfen ...