ecshop解决php版本5.5的报错问题

更新时间:2014-10-20 点击量:572

  问题一:preg_replace_callback Requires argument 2, 'Array', to be a valid callback

这个错误提醒 第二个参数是一个回调不能为数组

解决方法:找到这个方法调用的地方:
 
例如:

return preg_replace_callback($pattern, $replace, $source);

改成: 
return preg_replace_callback($pattern,
            function ($m){
            return $this->call_back($m[1]);
            }, 
        $source);

再定义 一个call_back 回调方法 即可

function call_back($matches){       
        return $matches[1].($matches[2]+1);        
    }


问题二 : preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead 

代码:return preg_replace("/{([^\}\{\n]*)}/e", "\$this->select('\\1');", $source);

这个问题是以为php 5.5以上版本 抛弃了 preg_replace() 中的 /e;

解决方法:删除 /e 如下:

return preg_replace("/{([^\}\{\n]*)}/", "\$this->select('\\1');", $source);

支付宝扫码打赏 微信打赏

如果文章对您有帮助,就打赏一个吧

在线客服

客户服务

热线电话:

0755-36656507 15889489919 服务时间:

周一到周六:9:00-18:00

在线QQ客服

在线微信客服

关于我们 常见问题

支付方式 加盟合作

提交需求
优惠红包 购物车0 反馈留言 返回顶部