PHP动态preg_替换

PHP动态preg_替换,php,preg-replace,Php,Preg Replace,$end=preg\u replace($pattern,$replacement,$str) 如何使替换字符串$replacement随$str中的每个匹配项而变化?例如,我想用关联的图像替换每个匹配的字符串。关于回调的一些事情。。。对吗?您需要在模式字符串中使用或使用/e修饰符。第一种方法功能更强大,但如果您只需要相对简单的方法,第二种方法就更方便。是的,有回调的方法。特别是,这使得重复呼叫变得多余。有关要替换的内容的列表: $src = preg_replace_callback('/(

$end=preg\u replace($pattern,$replacement,$str)


如何使替换字符串$replacement随$str中的每个匹配项而变化?例如,我想用关联的图像替换每个匹配的字符串。关于回调的一些事情。。。对吗?

您需要在模式字符串中使用或使用
/e
修饰符。第一种方法功能更强大,但如果您只需要相对简单的方法,第二种方法就更方便。

是的,有回调的方法。特别是,这使得重复呼叫变得多余。有关要替换的内容的列表:

 $src = preg_replace_callback('/(thing1|thing2|thing3)/', 'cb_vars', $src);
回调可以执行某种形式的查找或转换:

 function cb_vars($m) {
     return strtoupper($m[1]);
 }

同样,您也可以使用normal和
/e
修饰符进行内联操作。

是!太棒了,我在阅读php文档时遇到了麻烦。谢谢你把它拼出来。。。