警告:preg_replace()[function.preg-replace]:未知的修饰符'd'

时间:2013-02-23 05:06:51

标签: php regex

我有一个偶尔发出错误的函数:

Warning: preg_replace() [function.preg-replace]: Unknown modifier 'd'

通常它不会。我不明白该模式何时发生,何时不合理。

我对正则表达式几乎一无所知,所以任何帮助都会非常感激。

这是功能:

function textHighlight($haystack,$needle,$clr='yellow') {
    $haystack=preg_replace("/($needle)/i","<span style='background:$clr;'>\${1}</span>",$haystack);
    return $haystack;
}

谢谢。

1 个答案:

答案 0 :(得分:3)

$ needle变量中可能包含'/'字符。您可以用#...#

替换/../