为什么我们遇到上述错误。当我们在运行超过500的for循环内运行代码时。
$text22 = preg_replace('/\S*\b('. $searchphrase[$rr] .')\b\S*/i', '<b><a href='.$bbb.' data-color='.$colors1[$clx].','.$colors2[$clx].','.$colors3[$clx].'>$1</a></b>', $aaa);
答案 0 :(得分:1)
您放入正则表达式的动态字符串可能包含正则表达式特有的字符。字符串中的左括号将导致“不匹配的括号”错误,而“在偏移8处”是问题所在的第二个提示。您应该在preg_quote
中包含正则表达式变量:
'/\S*\b('. preg_quote($searchphrase[$rr]) .')\b\S*/i'