PHP 类Smarty_Compiler.class.php中有一句话报错preg_replace(): The /e modifier is no longer supported

时间: 2020-03-08 / 分类: 网站制作技术 / 浏览次数: 38 views / 0个评论 发表评论


Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /var/www/……/Smarty/Smarty_Compiler.class.php on line 271

好像是php新版本修改了这个函数
说要用preg_replace_callback这个函数
然后我们就替换这个函数
替换为

$source_content = preg_replace_callback($search,
function($matches) {
return
$this->_quote_replace($this->left_delimiter) . 'php' . str_repeat(
$this->_quote_replace("\n"),
substr_count($matches[0], $this->_quote_replace("\n"))
)
. $this->_quote_replace($this->right_delimiter);
},
$source_content
);

当然最快捷的方法还是升级Smarty

发表评论

你必须 登录后 才能留言!