我使用此函数来替换数千个正则表达式代码:
function preg_replace_assoc(array $replace, $subject) {
return preg_replace(array_keys($replace), array_values($replace), $subject);
}
现在我升级到PHP 5.3.10并且出现了一些错误:
Warning: preg_replace(): Compilation failed: missing ) at offset 18
Warning: preg_replace(): Compilation failed: nothing to repeat at offset 35
Warning: preg_replace(): Unknown modifier '-'
我该如何调试? PHP不会打印数组键。
答案 0 :(得分:0)
为数组编写一个简单的循环,并逐个替换键值 - 在替换之前,打印键值对。
这样你就会知道哪个是有问题的表达。