Проблема с preg_match_all: компиляция завершилась несоответствующими скобками - PullRequest
0 голосов
/ 21 января 2019

Мне грозит следующее предупреждение

preg_match_all (): ошибка компиляции: несоответствующие скобки со смещением 4

при использовании preg_match_all

следующий код

preg_match_all('/' . $word . '/i', $text, $matches);

1 Ответ

0 голосов
/ 21 января 2019

Похоже, в $word есть некоторые специальные символы, используемые в синтаксисе регулярных выражений. Ваш $word содержит один из следующих символов: . \ + * ? [ ^ ] $ ( ) { } = ! < > | : - #. Вы должны процитировать эти символы, используя preg_quote:

preg_match_all('/'.preg_quote($word).'/i', $text, $matches);
...