PHP ile Küfür engelleme

Merhabalar, bu yazımızda PHP ile küfür, hakaret içeren metinleri ayıklayan bir fonksiyon yazacağız. Genellikle projelerimizde yorum alanları gibi herkesin görebileceği alanlara kullanıcılarımız içerikler yazıyor. Bu alanlara girilen metinleri kontrol eden ve içerisinde, küfür, hakaret barındıran bir metin bulduğunda bize bir değer dönen bir fonksiyon yazacağız. Bu fonksiyon, kullanıcı girdilerini kontrol eder ve belirli bir küfür veya hakaret kelimesi bulunursa, o metin parçasını filtreleyerek kaldırır. Ayrıca, bu fonksiyon, kullanıcının girdiği metnin dilini veya küfür kelime listesini özelleştirerek daha doğru sonuçlar elde etmenizi sağlar. Bu fonksiyon sayesinde, web sitenizdeki kullanıcıların girdiği metinler daha temiz ve saygılı olacaktır.

Gelelim fonksiyonumuza, fonksiyonumuza hakaret olarak kabul edeceğimiz kelimeleri içeren bir php array göndermemiz gerekecek. Burada paylaşmak yerine hakaret kelimelerine erişmek için bu linke tıklayabilirsiniz.

/**
 * Verilen cümlenin hakaret içerip içermediğini kontrol eden fonksiyon.
 * @param string $string
 * @param array $blacklist
 * @return bool
 */
function checkInsult(string $string,array $blacklist = []): bool
{
    if (empty($blacklist)) {
        echo 'Kara Liste boş';
        return;
    }
    $words = array_map('strtolower', $blacklist);
    $search = array('.','-',',','*','>','<','_',')','(','&','%','+','!','/','=','?','|');
    $str = array_unique(explode(' ', trim(preg_replace('/\s+/', ' ', str_replace($search,' ', $string)))));
    $strLower = [];
    foreach ($str as $s){
        $strLower[] = mb_strtolower($s);
    }
    foreach ($words as $word) {
        if (in_array($word, $strLower)) {
            return true;
        }
    }
    return false;
}

Fonksiyonumuza giren metin eğer hakaret içeriyorsa fonksiyonumuz true değer döndürecektir. Aşağıdaki şekilde kullanabilirsiniz.

$text = 'Hakaret içermeyen bir metin.';
if (checkInsult($text)){
    echo "Bu metin hakaret içeriyor.";
}else {
    echo "Bu metin hakaret içermiyor.";
}
// Çıktı olarak hakaret içermiyor sonucu alacağız.

PHP ile küfür ve hakaretleri ayıklamak için yazdığımız fonksiyon, web sitelerinde yer alan kullanıcı girdilerini daha güvenli ve saygılı hale getirmek için önemli bir adımdır. Bu fonksiyon, kullanıcıların girdiği metinleri kontrol ederek belirli bir küfür veya hakaret kelimesi bulunursa, o metin parçasını filtreleyerek kaldırır. Bu sayede, web sitenizdeki kullanıcıların girdiği metinler daha temiz ve saygılı olacaktır. Ayrıca, fonksiyonun dil ve küfür kelime listesini özelleştirme özelliği sayesinde daha doğru sonuçlar elde etmeniz mümkündür. PHP ile küfür ve hakaretleri ayıklamak için yazdığımız bu fonksiyon, web sitenizi daha güvenli ve saygılı hale getirmek için kullanabileceğiniz önemli bir araçtır.

Bu ve benzeri önemli ipuçlarını öğrenmek için diğer yazılarıma da göz atabilirsiniz.

Web sitesine mi ihtiyacınız var ?

Blacklist: https://github.com/ooguz/turkce-kufur-karaliste

Kategori: