您的位置:首页 > 编程语言 > PHP开发

php版本切换问题:Redefining already defined constructor for class

2015-12-15 15:54 519 查看
本地PHP环境PHP5.4,安装ecshop2.7.3后,很多地方会报如下的错

Redefining already defined constructor for class XXX

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

1/**
2     * 构造函数
3     *
4     * @access  public
5     * @param
6     *
7     * @return void
8     */
9    function alipay()
10    {
11    }
12 
13    function __construct()
14    {
15        $this->alipay();
16    }
其中使用和类名相同点函数名作为构造函数是php4时代的写法,php5时代的构造函数是 __construct(),ecshop为了兼容老版本的php,所以采用了上面的写法。

但是从php5.4开始,对于这样的两种写法同时出现的情况,要求必须__construct()在前,同名函数在后,所以只需要对调两个函数的位置即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: