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和ACCESS写聊天室(五)
Oct 09 PHP
PHP Memcached + APC + 文件缓存封装实现代码
Mar 11 PHP
php 使用post,get的一种简洁方式
Apr 25 PHP
php图片的裁剪与缩放生成符合需求的缩略图
Jan 11 PHP
Android ProgressBar进度条和ProgressDialog进度框的展示DEMO
Jun 19 PHP
php之curl实现http与https请求的方法
Oct 21 PHP
php获得网站访问统计信息类Compete API用法实例
Apr 02 PHP
如何使用PHP对网站验证码进行破解
Sep 17 PHP
编写PHP脚本来实现WordPress中评论分页的功能
Dec 10 PHP
[原创]解决wincache不支持64位PHP5.5/5.6的问题(提供64位wincache下载)
Jun 22 PHP
PHP flush 函数使用注意事项
Aug 26 PHP
PHP编写简单的App接口
Aug 28 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编程最快明白(第一讲 软件环境和准备工作)
2010/10/25 PHP
php使用高斯算法实现图片的模糊处理功能示例
2016/11/11 PHP
thinkPHP数据库增删改查操作方法实例详解
2016/12/06 PHP
php数组和链表的区别总结
2019/09/20 PHP
提高javascript效率 一次判断,而不要次次判断
2012/03/30 Javascript
JavaScript高级程序设计(第3版)学习笔记10 再访js对象
2012/10/11 Javascript
js中widow.open()方法使用详解
2013/07/30 Javascript
禁用Enter键表单自动提交实现代码
2014/05/22 Javascript
JavaScript获取当前网页最后修改时间的方法
2015/04/03 Javascript
JQuery插件ajaxfileupload.js异步上传文件实例
2015/05/19 Javascript
使用CoffeeScrip优美方式编写javascript代码
2015/10/28 Javascript
JavaScript:Array类型全面解析
2016/05/19 Javascript
jQuery Mobile中的button按钮组件基础使用教程
2016/05/23 Javascript
简单的JS轮播图代码
2016/07/18 Javascript
Bootstrap Modal遮罩弹出层代码分享
2016/11/21 Javascript
js点击任意区域弹出层消失实现代码
2016/12/27 Javascript
微信小程序 详解Page中data数据操作和函数调用
2017/01/12 Javascript
Vue通过ref父子组件拿值方法
2018/09/12 Javascript
微信小程序控制台提示warning:Now you can provide attr "wx:key" for a "wx:for" to improve performance解决方法
2019/02/21 Javascript
Fetch超时设置与终止请求详解
2019/05/18 Javascript
Vue的生命周期操作示例
2019/09/17 Javascript
原生js+ajax分页组件
2020/01/30 Javascript
用Angular实现一个扫雷的游戏示例
2020/05/15 Javascript
用实例分析Python中method的参数传递过程
2015/04/02 Python
python实现统计代码行数的方法
2015/05/22 Python
pandas 使用apply同时处理两列数据的方法
2018/04/20 Python
详解Python列表赋值复制深拷贝及5种浅拷贝
2019/05/15 Python
如何解决django-celery启动后迅速关闭
2019/10/16 Python
python django中8000端口被占用的解决
2019/12/17 Python
Jupyter Notebook的连接密码 token查询方式
2020/04/21 Python
关于Python3爬虫利器Appium的安装步骤
2020/07/29 Python
运动会通讯稿100字
2014/01/31 职场文书
项目投资建议书
2014/05/16 职场文书
党员批评与自我批评发言
2014/10/02 职场文书
公务员年终个人总结
2015/02/12 职场文书
2015年学生会部门工作总结
2015/04/21 职场文书