Выползает ошибка Deprecated: str_replace(): Passing null to parameter #1 ($search)

Подскажите пожалуйста как поправить, я в этом деле новичок. На сайте появляется ошибка Deprecated: str_replace(): Passing null to parameter #1 ($search)

вот сам код ниже:

{
$text = str_replace($this->bb_open, '', $text);
$text = str_replace($this->bb_close, '', $text);
$text = str_replace($this->bb_single, '', $text);
$text = preg_replace('#\\[(code|url|img|html)[^\s]*?\].*?\[/\\1\]#usi', '', $text);
return $text;
}

Ответы (1 шт):

Автор решения: Алексей Шиманский

Для текущей версии PHP больше нельзя первым параметром передавать null в функцию str_replace

Как минимум можно лечить так: str_replace($this->bb_open ?? '', '', $text);, т.е. за счёт null coelesce оператора задавать дефолтное значение, если значение null.


я в этом деле новичок

Как читать "Deprecated: str_replace(): Passing null to parameter #1"

  • Deprecated - тип предупреждения, в данном случае "Устарело"
  • str_replace - где именно что-то не так. В данном случае в указанной функции
  • Passing null to parameter #1" --- говорит что именно не так. Если вбить текст в переводчик, то тот напишет, что "передача значения null в параметр с номером 1"
→ Ссылка