当前位置:Gxlcms >
PHP教程 >
preg_replace怎么替换成preg_replace_callback
preg_replace怎么替换成preg_replace_callback
时间:2021-07-01 10:21:17
帮助过:5人阅读
preg_replace如何替换成preg_replace_callback
小弟以前从事Delphi开发,被社会所迫学习了PHP,今天当头一棒直接蒙了。
这个怎么改啊,程序报错需要将preg_replace替换成preg_replace_callback
$fields = preg_replace('/([a-zA-Z0-9_]+)\.([a-zA-Z0-9_*]+)/e', "\$this->_getFieldTable('\\1') . '.\\2'", $fields);
------解决方案--------------------$fields = preg_replace_callback('/([a-zA-Z0-9_]+)\.([a-zA-Z0-9_*]+)/', array($this, "_getFieldTable"), $fields);
不过_getFieldTable要改一下了,因为接收的是一个数组了。
------解决方案--------------------噢,漏了个点
$fields = preg_replace('/([a-zA-Z0-9_]+)\.([a-zA-Z0-9_*]+)/', function($r) {
return $this->_getFieldTable($r[1]) . ".$r[2]";
}, $fields);