Hızlı bir çözüm bu dizinin üzerinde yineleme gerekmez gibi anahtarını denetleyerek içerir. Ancak, kötü kelimeler listesi bir değişiklik gerektirecektir.
$showstopper = array('badword1' => 1, 'badword2' => 1, 'badword3' => 1, 'badword4' => 1);
$yourmouth = "im gonna badword3 you up";
// split words on space
$words = explode(' ', $yourmouth);
foreach($words as $word) {
// filter extraneous characters out of the word
$word = preg_replace('/[^A-Za-z0-9]*/', '', $word);
// check for bad word match
if (isset($showstopper[$word])) {
die('game over');
}
}
preg_replace Kullanıcıların * bad_word3 * gibi bir şey yazarak filtre kötüye yok sağlar. Ayrıca dizi anahtarı onay bomba değil sağlar.