ECSHOP完美解决Deprecated: preg_replace()报错的问题


Posted in PHP onMay 17, 2016

随着PHP5.5 的普及,ECSHOP系统又爆出了新的错误。PHP发展到PHP5.5版本以后,有了很多细微的变化。而ECSHOP官方更新又太慢,发现这些问题后也不及时升级,导致用户安装使用过程中错误百出。说了半天,这个新错误到底是什么呢,它的完整错误提示信息是这样的:

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in.......

注意:不是所有人的ECSHOP都会报这个错误,只有使用PHP5.5环境的ECSHOP才会报这个错误。

下面ecshop开发中心(www.68ecshop.com)教程先来说一下错误产生的原因:

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->select('\\1');", $source);

替换为

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

问题解决。

3)、如果你的ECSHOP中其他文件也报类似的 preg_replace错误,请参照上面方法解决之,解决思路和解决方法是一样的。

以上这篇ECSHOP完美解决Deprecated: preg_replace()报错的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php读取数据库信息的几种方法
May 24 PHP
浅谈PHP 闭包特性在实际应用中的问题
Oct 30 PHP
PHP 一个随机字符串生成代码
May 26 PHP
php checkbox 取值详细说明
Aug 19 PHP
php正则表达式(regar expression)
Sep 10 PHP
PHP下打开phpMyAdmin出现403错误的问题解决方法
May 23 PHP
table标签的结构与合并单元格的实现方法
Jul 24 PHP
php对csv文件的读取,写入,输出下载操作详解
Aug 10 PHP
ThinkPHP安装和设置
Jul 27 PHP
php获取ajax的headers方法与内容实例
Dec 27 PHP
PHP后台实现微信小程序登录
Aug 03 PHP
PHP中“=>
Mar 01 PHP
简单理解PHP的面向对象编程方式
May 17 #PHP
WordPress中的shortcode短代码功能使用详解
May 17 #PHP
CodeIgniter生成静态页的方法
May 17 #PHP
CodeIgniter连贯操作的底层原理分析
May 17 #PHP
CI框架常用方法小结
May 17 #PHP
CodeIgniter记录错误日志的方法全面总结
May 17 #PHP
CI框架整合widget(页面格局)的方法
May 17 #PHP
You might like
基于PHP读取TXT文件向数据库导入海量数据的方法
2013/04/23 PHP
深入Memcache的Session数据的多服务器共享详解
2013/06/13 PHP
PHP实现读取一个1G的文件大小
2013/08/24 PHP
PHP中preg_match正则匹配中的/u、/i、/s含义
2015/04/17 PHP
js控制div及网页相关属性的代码
2009/12/19 Javascript
javascript中日期转换成时间戳的小例子
2013/03/21 Javascript
jQuery实现表头固定效果的实例代码
2013/05/24 Javascript
js获取系统的根路径实现介绍
2013/09/08 Javascript
javascript下拉框选项单击事件的例子分享
2015/03/04 Javascript
js 获取元素在页面上的偏移量的方法汇总
2015/04/13 Javascript
javascript+canvas实现刮刮卡抽奖效果
2015/07/29 Javascript
jquery+json实现数据二级联动的方法
2015/11/28 Javascript
jQuery循环遍历子节点并获取值的方法
2016/04/14 Javascript
jQueryeasyui 中如何使用datetimebox 取两个日期间相隔的天数
2017/06/13 jQuery
什么是Vue.js框架 为什么选择它?
2017/10/17 Javascript
JS动态添加元素及绑定事件造成程序重复执行解决
2017/12/07 Javascript
使用vue制作探探滑动堆叠组件的实例代码
2018/03/07 Javascript
js+canvas实现滑动拼图验证码功能
2018/03/26 Javascript
JS+HTML实现的圆形可点击区域示例【3种方法】
2018/08/01 Javascript
说说如何利用 Node.js 代理解决跨域问题
2019/04/22 Javascript
JavaScript运动原理基础知识详解
2020/04/02 Javascript
微信小程序实现canvas分享朋友圈海报
2020/06/21 Javascript
axios解决高并发的方法:axios.all()与axios.spread()的操作
2020/11/09 Javascript
Python简单连接MongoDB数据库的方法
2016/03/15 Python
python实现简易通讯录修改版
2018/03/13 Python
python如何统计序列中元素
2020/07/31 Python
python验证码识别教程之灰度处理、二值化、降噪与tesserocr识别
2018/06/04 Python
Python使用Turtle库绘制一棵西兰花
2019/11/23 Python
Python的形参和实参使用方式
2019/12/24 Python
HTML5 使用 sessionStorage 进行页面传值的方法
2018/07/02 HTML / CSS
html5 Canvas绘制线条 closePath()实例代码
2012/05/10 HTML / CSS
高考励志标语
2014/06/05 职场文书
2014企业领导班子四风对照检查材料思想汇报
2014/09/17 职场文书
党支部考察意见范文
2015/06/02 职场文书
2019年销售部季度工作计划3篇
2019/10/09 职场文书
golang中的struct操作
2021/11/11 Golang