У меня есть эта функция, которая возвращает true, если в массиве найдено одно из плохих слов $stopwords
function stopWords($string, $stopwords) {
$stopwords = explode(',', $stopwords);
$pattern = '/\b(' . implode('|', $stopwords) . ')\b/i';
if(preg_match($pattern, $string) > 0) {
return true;
}
return false;
}
Вроде нормально работает.
Проблема в том, что когда массив $stopwords
пуст (поэтому плохие слова не указаны), он всегда возвращает истину, например, если пустое значение распознается как плохое слово, и он всегда возвращает истину (я думаю, проблема в том, что это, но может быть, еще один).
Может кто-нибудь помочь мне разобраться с этой проблемой?
Спасибо