aBSuRD, спс за подсказку.
--------------
Хотел ткнуть в функцию смайлов антимат, т.к., мне так легче...
Подскажите, как сделать, чтоб при написании слова
Мат, МАТ, мАт и т.д..
заменялось на ***?
$msg = str_replace('мат', '***', $msg);
nitron, так только с латиницей...
А статью про ireplace с кирилицей потерял.
Пишу небольшую cms, и такая проблема возникла.. Нужно при наборе пользователя на форуме допустим 100 постов, увеличить его статус на 1. Как это сделать? Чтоб было более оптимальнее.. Каждый раз при добавлении поста не хочется делать лишние запросы, вытаскивать кол-во уже имеющихся постов, и сверять, сотый пост он пишет или нет..
Таблица users:
id | login | pass | status
status-это цифра, соответствующая его статусу. (1-пользователь, 2-продвинутый, 3-модер и т.д)
Constantin_Logan,
public static function antimat($str)
{
$text = iconv("utf-8", "windows-1251", $str);
$pattern = "/\w{0,5}[хx]([хx\s\!@#\$%\^&*+-\|\/]{0,6})[уy]([уy\s\!@#\$%\^&*+-\|\/]{0,6})[ёiлeеюийя]\w{0,7}|\w{0,6}[пp]([пp\s\!@#\$%\^&*+-\|\/]{0,6})[iие]([iие\s\!@#\$%\^&*+-\|\/]{0,6})[3зс]([3зс\s\!@#\$%\^&*+-\|\/]{0,6})[дd]\w{0,10}|[сcs][уy]([уy\!@#\$%\^&*+-\|\/]{0,6})[4чkк]\w{1,3}|\w{0,4}[bб]([bб\s\!@#\$%\^&*+-\|\/]{0,6})[lл]([lл\s\!@#\$%\^&*+-\|\/]{0,6})[yя]\w{0,10}|\w{0,8}[её][bб][лске@eыиаa][наи@йвл]\w{0,8}|\w{0,4}[еe]([еe\s\!@#\$%\^&*+-\|\/]{0,6})[бb]([бb\s\!@#\$%\^&*+-\|\/]{0,6})[uу]([uу\s\!@#\$%\^&*+-\|\/]{0,6})[н4ч]\w{0,4}|\w{0,4}[еeё]([еeё\s\!@#\$%\^&*+-\|\/]{0,6})[бb]([бb\s\!@#\$%\^&*+-\|\/]{0,6})[нn]([нn\s\!@#\$%\^&*+-\|\/]{0,6})[уy]\w{0,4}|\w{0,4}[еe]([еe\s\!@#\$%\^&*+-\|\/]{0,6})[бb]([бb\s\!@#\$%\^&*+-\|\/]{0,6})[оoаa@]([оoаa@\s\!@#\$%\^&*+-\|\/]{0,6})[тnнt]\w{0,4}|\w{0,10}[ё]([ё\!@#\$%\^&*+-\|\/]{0,6})[б]\w{0,6}|\w{0,4}[pп]([pп\s\!@#\$%\^&*+-\|\/]{0,6})[иeеi]([иeеi\s\!@#\$%\^&*+-\|\/]{0,6})[дd]([дd\s\!@#\$%\^&*+-\|\/]{0,6})[oоаa@еeиi]([oоаa@еeиi\s\!@#\$%\^&*+-\|\/]{0,6})[рr]\w{0,12}/i";
$replacement = "[***]";
$text = preg_replace($pattern, $replacement, $text);
$text = iconv("windows-1251", "utf-8", $text);
return $text;
}
добавлено спустя 4 минуты:
Amarelle, imagerotate()
добавлено спустя 1 минуту:
aBSuRD, добавление постов (относительно других событий) происходит очень редко, поэтому проверять количество постов и текущий статус лучше всего именно при добавлении поста.