加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

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

发布时间:2020-12-13 02:50:34 所属栏目:PHP教程 来源:网络整理
导读:《:ECSHOP在PHP5.5及高版本上报错的解决方法》要点: 本文介绍了:ECSHOP在PHP5.5及高版本上报错的解决方法,希望对您有用。如果有疑问,可以联系我们。 PHP实例 Ecshop却没来得及修改,如果在高版本的php虚拟主机上安装ecshop程序,出现兼容性问题. PHP实例

《:ECSHOP在PHP5.5及高版本上报错的解决方法》要点:
本文介绍了:ECSHOP在PHP5.5及高版本上报错的解决方法,希望对您有用。如果有疑问,可以联系我们。

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

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

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

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

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

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

PHP实例将下列:

PHP实例
$tag_sel = array_shift(explode(' ',$tag));

PHP实例修改为:

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

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

PHP实例第二个报错解决办法:

PHP实例找到文件:include/cls_template.php

PHP实例将以下代码:

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

PHP实例修改成:

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

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

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

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

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

PHP实例找到346行吧

PHP实例
return cls_image::gd_version()

PHP实例替换成:

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

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

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

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

PHP实例

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

PHP实例替换成

PHP实例
return preg_replace_callback("/{([^/}/{/n]*)}/",$source);

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

PHP实例
$tag_sel = array_shift(explode(' ',$tag));

PHP实例改成:

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

PHP实例4 .会员整合出现

PHP实例
phpbb::set_cookie() should be compatible with integrate
/includes/modules/integrates/phpbb.php on line 232
110行
function set_cookie ($username="")

PHP实例修改成

PHP实例
function set_cookie ($username="",$remember = NULL)
includes/modules/integrates/phpwind6.php

PHP实例ucenter.php? vbb.php也是这样修改

PHP实例ucenter.php 210行修改成

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

PHP实例127行修改成

PHP实例
function login($username,$remember = NULL)

PHP实例5. 数据库备份出现

PHP实例
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);
  }

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

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

PHP实例打开includes/cls_sql_dump.php

PHP实例?479行

PHP实例
function get_random_name()

PHP实例修改成

PHP实例
static function get_random_name()

《:ECSHOP在PHP5.5及高版本上报错的解决方法》是否对您有启发,欢迎查看更多与《:ECSHOP在PHP5.5及高版本上报错的解决方法》相关教程,学精学透。编程之家 52php.cn为您提供精彩教程。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读