stristr Поиск без учета регистра PHP - PullRequest
0 голосов
/ 18 августа 2010

Прошу прощения, мой нуб-инесс!

У меня есть строка $, и я хотел бы посмотреть, содержит ли она одно или несколько из группы слов, ссылки на слова c t, fu , sl ** ETC Вот я и подумал, что смогу сделать:

if(stristr("$input", "dirtyword1"))
{
   $input = str_ireplace("$input", "thisWillReplaceDirtyWord");
}
elseif(stristr("$input", "dirtyWord1"))
{
   $input = str_ireplace("$input", "thisWillReplaceDirtyWord2");
}

... ETC. НО, я не хочу продолжать делать, если / elseif / elseif / elseif / elseif ...

Разве я не могу просто сделать оператор switch ИЛИ иметь массив, а затем просто сказать что-то вроде?:

$dirtywords = { "f***", "c***", w****", "bit**" };

if(stristr("$input", "$dirtywords"))
{
   $input = str_ireplace("$input", "thisWillReplaceDirtyWord");
}

Буду признателен за любую помощь

Спасибо

Ответы [ 3 ]

3 голосов
/ 18 августа 2010
$dirty = array("fuc...", "pis..", "suc..");
$censored = array("f***", "p***", "s***");

$input= str_ireplace($dirty, $censored , $input);

Обратите внимание, что вам не нужно проверять stristr (), чтобы сделать str_ireplace ()

0 голосов
/ 18 августа 2010

Конечно, не лучшее решение, так как я не знаю слишком много PHP, но как насчет цикла?

foreach (array("word1", "word2") as $word)
{
  if(stristr("$input", $word))
  {
     $input = str_ireplace("$input", $word" "thisWillReplaceDirtyWord");
  }
}

Если вам нужно проверить несколько объектов, подумайте «loop»; -)

0 голосов
/ 18 августа 2010

http://php.net/manual/en/function.str-ireplace.php

Если поиск и замена являются массивами, то str_ireplace () получает значение из каждого массива и использует их для поиска и замены по теме. Если замена имеет меньше значений, чем поиск, тогда для остальных значений замены используется пустая строка. Если поиск - это массив, а замена - это строка, то эта строка замены используется для каждого значения поиска.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...