Проверка на стоп-слова в PHP

Сегодня мы разберем несложный пример, который позволит нам проверять, существует ли в тексте какие-нибудь стоп-слова. Это очень удобно использовать при защите сайта, а так же устанавливать в комментариях анти-мат.

 

Рассмотрим код:

 

$i = 0;

$fp = fopen("stopworlds.txt", "r"); // Открываем файл в режиме чтения

if($fp)

    {

        while (!feof($fp))

          {

              $words= fgets($fp, 10000);

                                

              $pos = strpos($all_text, trim($words));     

              if ($pos !== false)

              $i++;

           }

     }

 if($i>0)

 {

      $error = 0;

 }

 

А теперь попробуем разобраться с основными строчками кода:

 

$fp = fopen("stopworlds.txt", "r") - открываем файл stopworlds.txt, в котором находится список слов, которые не должны вводить пользователи

 

При успешном открытии файла мы начинаем цикл, в котором перебираем все стоп-слова.

 

$pos = strpos($all_text, trim($words)); - здесь мы проверяем, существует ли в нашей переменной $all_text (это наш текст) какое-нибудь стоп-слово.

 

if ($pos !== false) - если есть, тогда переменной $i мы прибавляем единицу.

 

Ну и последней проверкой мы узнаем, если $i>0 (стоп-слова есть в предложение), тогда переменной $error присваиваем 0. Но вы можете сделать что-нибудь свое, например функцию выхода exit("у нас не матерятся");




Рекомендуем почитать

 

Добавить комментарий


Ваше имя:


Комментарий:


Введите: Картинка