ECSHOP在PHP5.5及高版本上报错的解决方法


Posted in PHP onAugust 31, 2015

Ecshop却没来得及修改,如果在高版本的php虚拟主机上安装ecshop程序,出现兼容性问题。

小编在本地环境php5.5上安装出现以下两种报错提示

Only variables should be passed by reference php
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead…?

通过在网络上查找,小编发现并不是只能在低版本的php中安装,也是找到了解决办法,方便大家在php5.5版本上调试程序。小编就在这里把解决方法分享给大家:

先说明第一个问题的解决方法:

php 5.3以上版本的问题,和配置有关 只要418行把这一句拆成两句就没有问题了。

将下列:

$tag_sel = array_shift(explode(' ', $tag));

修改为:

$tag_arr = explode(' ', $tag); $tag_sel = array_shift($tag_arr);

因为array_shift的参数是引用传递的,5.3以上默认只能传递具体的变量,而不能通过函数返回值

第二个报错解决办法:

找到文件:include/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);

小编目前只遇到这样两个报错,如果在程序调试和开发过程中遇到其他的问题,如果能够解决,小编也是会整理出解决方法的。

ecshop 在高版本PHP下报错的解决方法

1 .ecshop提示Strict Standards: Non-static method cls_image

::gd_version() should not be called statically inE:/wwwroot/weirenchou/includes/lib_base.php on line 346

找到346行吧

return cls_image::gd_version()

替换成:

$p = new cls_image();return $p->gd_version();

2 .ecshop的时候出现如下错误:

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /ecshop/includes/cls_template.php on line 300

打开ecshop的目录找到includes/cls_template.php 到第300行

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

替换成

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

3. Strict Standards: Only variables should be passed by reference in E:/web/shopex/includes/cls_template.php on line 422

$tag_sel = array_shift(explode(' ', $tag));

改成:

$tag_arr = explode(' ', $tag); $tag_sel = array_shift($tag_arr);

4 .会员整合出现

phpbb::set_cookie() should be compatible with integrate

/includes/modules/integrates/phpbb.php on line 232

110行

function set_cookie ($username="")

修改成

function set_cookie ($username="", $remember = NULL)

includes/modules/integrates/phpwind6.php

ucenter.php  vbb.php也是这样修改

ucenter.php 210行修改成

function add_user($username, $password, $email, $gender = -1, $bday = 0, $reg_date = 0, $md5password = '')

127行修改成

function login($username, $password, $remember = NULL)

5. 数据库备份出现

edefining already defined constructor for class cls_sql_dump

/admin/includes/cls_sql_dump.php on line 

 function __construct(&$db, $max_size =)

  {

    $this->cls_sql_dump($db, $max_size);

  }

移到function cls_sql_dump(&$db, $max_size=0)前面

Non-static method cls_sql_dump::get_random_name() admin/database.php on line 64

打开includes/cls_sql_dump.php

 479行

function get_random_name()

修改成

static function get_random_name()
PHP 相关文章推荐
PHP下利用header()函数设置浏览器缓存的代码
Sep 01 PHP
测试php连接mysql是否成功的代码分享
Jan 24 PHP
php生成随机颜色的方法
Nov 13 PHP
php下pdo的mysql事务处理用法实例
Dec 27 PHP
PHP中使用imagick实现把PDF转成图片
Jan 26 PHP
php中动态调用函数的方法
Mar 16 PHP
PHP中的traits简单使用实例
May 13 PHP
学习php设计模式 php实现观察者模式(Observer)
Dec 09 PHP
PHP中STDCLASS用法实例分析
Nov 11 PHP
php mysql获取表字段名称和字段信息的三种方法
Nov 13 PHP
php 实现简单的登录功能示例【基于thinkPHP框架】
Dec 02 PHP
如何在PHP中使用数组
Jun 09 PHP
php基础设计模式大全(注册树模式、工厂模式、单列模式)
Aug 31 #PHP
PHP中error_reporting()用法详解
Aug 31 #PHP
大家在抢红包,程序员在研究红包算法
Aug 31 #PHP
微信公众平台开发之天气预报功能
Aug 31 #PHP
百度地图经纬度转换到腾讯地图/Google 对应的经纬度
Aug 28 #PHP
PHP7.0安装笔记整理
Aug 28 #PHP
php中二维数组排序问题方法详解
Aug 28 #PHP
You might like
用PHP实现验证码功能
2006/10/09 PHP
用PHP函数解决SQL injection
2006/12/09 PHP
PHP 抓取新浪读书频道的小说并生成txt电子书的代码
2009/12/18 PHP
php 获取百度的热词数据的代码
2012/02/18 PHP
php获得url参数中具有&的值的方法
2014/03/05 PHP
php禁用cookie后session设置方法分析
2016/10/19 PHP
PHP实现的字符串匹配算法示例【sunday算法】
2017/12/19 PHP
php中html_entity_decode实现HTML实体转义
2018/06/13 PHP
Laravel 数据库加密及数据库表前缀配置方法
2019/10/10 PHP
JS延迟加载(setTimeout) JS最后加载
2010/07/15 Javascript
jquery 图片轮换效果
2010/07/29 Javascript
JS 实现完美include载入实现代码
2010/08/05 Javascript
在JavaScript中重写jQuery对象的方法实例教程
2014/08/25 Javascript
jquery合并表格中相同文本的相邻单元格
2015/07/17 Javascript
Angular.js与Bootstrap相结合实现表格分页代码
2016/04/12 Javascript
Backbone View 之间通信的三种方式
2016/08/09 Javascript
Bootstrap源码解读网格系统(3)
2016/12/22 Javascript
js模糊查询实例分享
2016/12/26 Javascript
python算法学习之桶排序算法实例(分块排序)
2013/12/18 Python
Python中的XML库4Suite Server的介绍
2015/04/14 Python
python清除字符串里非数字字符的方法
2015/07/02 Python
python检测是文件还是目录的方法
2015/07/03 Python
关于Python中Inf与Nan的判断问题详解
2017/02/08 Python
Python告诉你木马程序的键盘记录原理
2019/02/02 Python
PyTorch中的C++扩展实现
2020/04/02 Python
澳大利亚最好的厨具店:Kitchen Warehouse
2018/03/13 全球购物
英国花园、DIY、电器和家居用品商店:Robert Dyas
2019/03/18 全球购物
马来西亚排名第一的宠物用品店:Pets Wonderland
2020/04/16 全球购物
Linux上比较文件的命令都有哪些
2013/09/28 面试题
国际贸易专业推荐信
2013/11/15 职场文书
实习评语
2013/12/16 职场文书
家长给小学生的评语
2014/01/30 职场文书
设计师个人求职信范文
2014/02/02 职场文书
绿色校园广播稿
2014/10/13 职场文书
安娜卡列尼娜观后感
2015/06/11 职场文书
新手入门Jvm-- JVM对象创建与内存分配机制
2021/06/18 Java/Android