使用preg_replace()时出错

时间:2014-04-16 09:28:10

标签: php preg-replace

我正在尝试运行以下代码。

// Do the replace
$row->text = preg_replace("#{".$this->plg_tag."}".$tagcontent."{/".$this->plg_tag."}#s", $plg_html, $row->text);

// end foreach

但是,我得到了这个警告。

  

警告:preg_replace()[function.preg-replace]:第510行的/home/girmag/public_html/plugins/content/jw_sigpro/jw_sigpro.php中的未知修饰符'{'

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

由于缺乏信息而在黑暗中拍摄,但我的猜测是$this->plg_tag或(更有可能)$tagcontent包含导致问题的#,因为...好吧,这是你的分隔符!

试试这个:

preg_replace("(\{(".preg_quote($this->plg_tag).")\}"
        .preg_quote($tagcontent)."\{/\1\})s", $plg_html, $row->text);