解决Redefining already defined constructor for class...的问题

 更新时间:2015年12月4日 21:37  点击:501

本地PHP环境PHP5.4,安装ecshop2.7.3后,很多地方会报如下的错

Redefining already defined constructor for class XXX

检查代码可以发现,对应的位置是某个类的构造函数,具体写法如下:

/**
	     * 构造函数
	     *
	     * @access  public
	     * @param
	     *
	     * @return void
	     */
	    function alipay()
	    {
	    }
	 
	    function __construct()
	    {
	        $this->alipay();
	    }

其中使用和类名相同点函数名作为构造函数是php4时代的写法,php5时代的构造函数是 __construct(),ecshop为了兼容老版本的php,所以采用了上面的写法。

但是从php5.4开始,对于这样的两种写法同时出现的情况,要求必须__construct()在前,同名函数在后,所以只需要对调两个函数的位置即可。

改成如下写法:

/**
	     * 构造函数
	     *
	     * @access  public
	     * @param
	     *
	     * @return void
	     */
	     function __construct()
	    {
	        $this->alipay();
	    }
	    function alipay()
	    {
	    }
	 	


[!--infotagslink--]

相关文章

  • Ecshop提示Only variables should be passed by reference in错误

    在安装好ecshop软件之后我们打开首页时提示Only variables should be passed by reference in错误了,碰到这个问题是什么原因呢?下面我们就一起来看看解决办法吧。...2016-11-25
  • 一文彻底理解js原生语法prototype,__proto__和constructor

    作为一名前端工程师,必须搞懂JS中的prototype、__proto__与constructor属性,相信很多初学者对这些属性存在许多困惑,容易把它们混淆,下面这篇文章主要给大家介绍了关于js原生语法prototype,__proto__和constructor的相关资料,需要的朋友可以参考下...2021-10-24
  • JavaScript精炼之构造函数 Constructor及Constructor属性详解

    除了创建对象,构造函数(constructor) 还做了另一件有用的事情―自动为创建的新对象设置了原型对象(prototype object) 。原型对象存放于 ConstructorFunction.prototype 属性中。例如,我们重写之前例子,使用构造函数创建...2015-11-08
  • php示例详解Constructor Prototype Pattern 原型模式

    原型模式中主要角色 抽象原型(Prototype)角色:声明一个克隆自己的接口 具体原型(Concrete Prototype)角色:实现一个克隆自己的操作当一个类大部分都是相同的只有部分是不同的时候,如果需要大量这个类的对象,每次都重复实...2015-10-21
  • 详解JavaScript中的构造器Constructor模式

    构造器Constructor不能被继承,因此不能重写Overriding,但可以被重载Overloading。通过本文给大家分享JavaScript中的构造器Constructor模式,对构造器constructor相关知识感兴趣的朋友一起学习吧...2016-01-15
  • ecshop自动分成二次开发实例

    自动分成功能在ecshop系统自带是没有的,如果我们需要对一单添加分成功能我们是需要进入二次开发的,下面小编来为各位介绍一个例子。 大概逻辑:后台操作一个订单发货...2016-11-25
  • 深入浅析JavaScript中的constructor

    constructor 属性返回对创建此对象的数组函数的引用。本文给大家介绍JavaScript中的constructor ,需要的朋友参考下吧...2016-04-22
  • php5.5中ecshop提示Only variables should be passed by reference

    php5.5升级了很多功能的同时也去除了不少功能了,小编在使用ecshop提示Only variables should be passed by reference错误了,下文就来和各位一起看解决办法。 php大...2016-11-25
  • php提示Redefining already defined constructor for class 错误

    使用是公司同事以前的电脑了它用的是php2.17了,小编觉得它旧了于时升级到了php5.4了,结果发现运行ecshop中现Redefining already defined constructor for class 错误了...2016-11-25
  • PHP中仿制 ecshop验证码实例

    这篇文章主要介绍了PHP中仿制 ecshop验证码实例,非常不错,具有参考借鉴价值,需要的朋友可以参考下...2017-01-15
  • ecshop分类树显示所有分类的解决方法

    ecshop分类树显示所有分类的解决方法 有需要的朋友可参考一下本文章。 解决方法如下: 比如在goods.php里, 代码如下 复制代码 $smarty->assi...2016-11-25
  • ECshop 迁移到 PHP7版本时遇到的兼容性问题

    最近有网友问我在php7上安装ecshopv2.7.3时,报错,究竟了半天没有找到原因,下面由脚本之家小编给大家分析此问题出现的原因...2016-02-18
  • js老生常谈之this,constructor ,prototype全面解析

    下面小编就为大家带来一篇js老生常谈之this,constructor ,prototype。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2016-04-06
  • ECSHOP完美解决Deprecated: preg_replace()报错的问题

    下面小编就为大家带来一篇ECSHOP完美解决Deprecated: preg_replace()报错的问题。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2016-05-20
  • ecshop 无限级分类分析

    function cat_options($spec_cat_id, $arr) { static $cat_options = array(); if (isset($cat_options[$spec_cat_id])) { retur...2016-11-25
  • 如何去除ecshop的power by ecshop版权信息

    免费版的ecshop,在标题和网站尾部都有版权信息,这个问题困扰大家很久了,感觉Powered by ECShop出现在网站里边不爽,想方设法无法去除。今天在下专门把解决方法贴出来,希望能够方便大家! 注:我们使用ecshop的产品,建议把网站底部的Powered by ECShop留着吧,尊重一下ecshop开发兄弟们的劳动成果嘛!...2018-01-06
  • 【已验证】如何去除ECSHOP的版权信息

    下图中红色圈定的部分就是本次修改要改的地方 修改ECSHOP后台管理中心的Title信息 修改方法其实很简单的: 打开语言包文件 /languages/zh_cn/admin/common.php 将 $_LANG['app_name'] = 'ECSHOP'; $_LANG['cp_home'] = 'ECSHOP 管理中心'; 修改为 $_LANG['app_name'] = 'ECSHOP120.com'; $_LANG[...2018-02-08
  • 解决Redefining already defined constructor for class...的问题

    本地PHP环境PHP5.4,安装ecshop2.7.3后,很多地方会报如下的错 Redefining already defined constructor for class XXX 检查代码可以发现,对应的位置是某个类的构造函数,具体写法如下: 其中使用和类名相同点函数名作为构造函数是php4时代的写法,php5时代的构造函数是 __construct(),ecshop为了兼容老版本的php,所以采用了上面的写法。 但是从php5.4开始,对于这样的两种写法同时出现的情况,要求必须__cons...2015-12-04