关于ECSHOP报错误Deprecated: preg_replace(): The /e modifier is de
2017-03-07 23:12 来源:www.chinab4c.com 作者:ecshop专家
随着PHP5.5 的普及,ECSHOP系统又爆出了新的错误。其实也不能怪人家ECSHOP了,主要是PHP发展的太快了,PHP发展到PHP5.5版本以后,有了很多细微的变化。而ECSHOP官方更新又太慢,发现这些问题后也不及时升级,导致用户安装使用过程中错误百出。说了半天,这个新错误到底是什么呢,它的完整错误提示信息是
这样的:
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in.......注意:不是所有人的ECSHOP都会报这个错误,只有使用PHP5.5环境的ECSHOP才会报这个错误。
下面我们先来说一下错误产生的原因,然后本站长(QQ:2211707)再告诉你怎么办?
1)、错误原因:
preg_replace() 函数中用到的修饰符 /e 在 PHP5.5.x 中已经被弃用了。
如果你的PHP版本恰好是PHP5.5.X,那你的ECSHOP肯定就会报类似下面这样的错误:
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in。。。。。。
2)、解决办法:
其实从刚才的错误提示信息中我们也能看出一二,它提示我们使用 preg_replace_callback 来代替 preg_replace。
所以解决方法如下:
使用记事本或其他PHP编辑软件(如:editplus)打开文件 includes/cls_template.php ,找到
return preg_replace("/{([^\\}\\{\\n]*)}/e", "\\$this->sel ect('\\\\1');", $source); |
替换为
return preg_replace_callback("/{([^\\}\\{\\n]*)}/", function($r) { return $this->sel ect($r[1]); }, $source); |
问题解决。
3)、如果你的ECSHOP中其他文件也报类似的 preg_replace错误,请参照上面方法解决之,解决思路和解决方法是一样的。
最近更新
常用插件
- ecshop2.7.1邮件发送插件
ecshop2.7.1邮件发送插件:该插件主要的开发思想是源于ecshop短信发送系统...
- ecshop最小购买数量控制插
ecshop最小购买数量控制插件,这个插件主要是为我们提供一个十分方便...
- ecshop没登陆情况下订单查
ecshop没登陆情况下订单查询插件,主要是针对ecshop在没有登陆的情况下...
- ecshop2.7.2生成虚拟订单2.
以前我们开发过ecshop下的虚拟订单,就是客户在访问的时候,会自动生...
- ecshop二次开发商品购买增
图片1香...
ecshop热门问答
ecshop热门资料
ecshopwinserver
ecshop收货人信息
ecshop优惠价格
ecshop另类
ecshop建义
ecshop边距
ecshop手机支付
ecshop搜索内容
ecshoprestful
ecshop痛哭流涕
ecshop留言列表
ecshop互联网络
ecshop首页商品分类
ecshop明白人
ecshop购货
ecshop商品批量导出
ecshop改名字
ecshop义务
ecshopXXXXXX
ecshop团购活动支付问题
ecshop商品字段
ecshop商品页面title
ecshop开关
ecshop简约数码商城
ecshop提单
ecshopvar
ecshopFastCGI
ecshop南宁电池网百度收录
ecshop一键更新
ecshopTrasport