Всех друзей поздравляем с Новым годом! Всего вам самого наилучшего! Всех благ, здоровья а материальное приложится!
СКРИПТЫ althtmlcssphpjsblog

Простой фильтр слов php пример поиск плохих слов в тексте, фильтруем мат

Поддержи проект!!!

Самый простой, какой только можно придумать – фильтр для слов через php! Как бы нам не хотелось жить в идеальном мире, но в нем как было так и есть множество идиотов, считающих себя самыми умными!

Чтобы им так не казалось на сайтах ставятся фильтры различной сложности и даже есть целые какие-то библиотеки! Или очень часто называют фильтрация плохих слов, матерный фильтр и т.д…

Я категорически против всякого усложнения и нагромождения кода! Я как-то уже писал о том, как я искал для себя счётчик скачиваний, в общем там, я почти в три раз сократил исполнительный код! Я не понимаю! Откуда появляются эти портянки кода! Код должен быть коротким и понятным, ну, насколько это возможно!

Как отфильтровать мат и др.нежелательные слова

  1. Алгоритм фильтра плохих слов/мата php
  2. Скрипт фильтра плохих слов/мата php
  3. Скрипт 2 фильтра плохих слов/мата php
  4. Поиск и замена плохих слов/мата php
  5. Скачать можно здесь
  1. Алгоритм фильтра плохих слов/мата php

    Самая главная проблема в фильтрации мата - это поиск и исключение матерных слов в тексте!

    В чем проблема!?

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

    Итого, напрашивается вывод, что нужно избавиться от всех знаков и пробелов, кроме букв, все привести к одному регистру, например к строчным -> strtolower и уже после этого нужно искать то слово!

    Как искать матерное слово!?

    Поскольку нужно проверять на совпадение каждого слова, то понадобится цикл

    Последнее время, чаще всего использую функцию substr_count - коротко записывается, хорошо работает - просто нравится!

    Замена матерного слова

    После того, как вы нашли слово, то его нужно заменить на... что-то... на ваше усмотрение

  2. Скрипт фильтра плохих слов/мата php

    Здесь надо сказать, что в какой-то момент strtolower так меня притомил, что я написал собственную функцию, чтобы она работала всегда -> strtolower собственная функция!

    1). Фильтрация плохих слов/мата в php.

    Для этого нам понадобится два объекта

    1.Где будем искать
    2.Что будем искать!
    Один из вариантов был уже описан на странице проверки на совпадение

    Текст нам нужно привести в нижний регистр(как я уже ранее говорил) -> strtolower

    1). Теперь немного о strtolower, если у вас UTF-8:

    $text = mb_strtolower($text , "UTF-8");

    2). Если у вас Windows-1251, то скорее всего должна сработать обычная strtolower:

    $text = strtolower($text);

    3). Способ, которым пользуюсь сейчас, берем собственную функцию, которой также говорили ранее

    $text = my_strtolower($text);

    Далее нам потребуется массив слов, которые будем искать в тексте

    Array

    (

    [0] => привет

    [1] => пока

    [2] => враг

    )

    Самый простой скрипт фильтрации плохих слов/мата php

    Этот скрипт сделан для понимания, как фильтрация должна работать...

    for($i = 0; $i < count($array); $i++)

    {

    $res = @substr_count($text , $array[$i]);

    if($res == true){ $Bad = " У нас нельзя ругаться "; }

    }


    Теперь давайте сделаем форму и в ней вы можете отправить какой-то текст с одним словам из выше указанного массива.

  3. Скрипт 2 фильтра плохих слов/мата php

    Второй вариант ничем не отличается по логике от первого, лишь было отличие в функции, которая искала совпадения [strpos]

    Это немного мудренее и вначале я использовал именно этот код…

    for ($i=0; $i < count($words); $i++)

    {

        if (@strpos($proverka_bad_words, trim($words[$i])) !== false) 

        {

        $Bad = " У нас нельзя ругаться ";     

        }

    }

  4. Поиск и замена плохих слов/мата php

    Что касается замены плохих слов, и вывода текста с каим-то,на что было заменено.. это - слишком трудоемкая задача и нет явного решения.

    Я встречался с такой задачей на нашей системе комментирования, и пришел к следующему - отправка на проверку админа данного сообщения, если мат обнаружен.

    Если сообщение, с матом прошло фильтр, то просто вручную удаляем сообщение. Пользователя блокируем навсегда!

    Время, сложность, ресурсы - требуемые на решение задачи замены этих слов не стоит всего этого! Но Вы!

    Всегда можете пойти своим путем.


Вас может еще заинтересовать список тем : #PHP | #PHP_FUNCTION |
Последняя дата редактирования : 2020-02-02 11:25
Название скрипта :Простой фильтр текста php
Скрипт № 33.3Ссылка на скачивение: Все скрипты на одной странице
Теги:
фильтр текстакак фильтровать текстфильтр нецензурных слов phpфильтр мата php

Последние комментарии :
Александр :
04/06/2020 01:42
Спасибо)
подробнее.
admin :
20/05/2020 10:36
Как бы смешно это не звучало! Но! Запускается новая система комментирования COMMENTS+ 1.5. в тестовом режиме!От…
подробнее.
Паула :
21/05/2020 04:48
Вообще мне очень нравится, что вы делаете! И ваш подход! И ваш стиль!И не обращайте внимание на всяких…
подробнее.
admin :
21/05/2020 05:03
Я Вас помню! Вы частенько оставляли сообщения на сайте!Все никак не мог спросить!? У Вас есть сайт -> зачем это…
подробнее.

НАШИ ПРОЕКТЫ : Проекты находятся в разной степени готовности (просто их столько, что времени не хватает…) Все статьи авторские, при копироавании активная ссылка обязательна DwWeb.ru! © 2015 - 2020 Мы на лучшем хостинге -> ruweb