新闻中心

Ecshop报错:Strict Standards: Redefining already defined constructor for class

作者 / 无忧主机 时间 2015-10-17 10:21:10

今天小编在使用ecshop建站的时候遇到了一个问题,报错提示: Strict Standards: Redefining already defined constructor for class alipay in /data/web/includes/modules/payment/alipay.php on line 85 这样的报错有很多,基本格式是: Strict Standards: Redefining already defined constructor for class后面加路径。 经过小编研究是因为ECSHOP模板架设的服务器php虚拟主机版本过高而发送报错。  PHP 类,有两种构造函数,一种是跟类同名的函数,一种是 ____construct()。从PHP5.4开始,对这两个函数出现的顺序做了最严格的定义,必须是 ____construct() 在前,同名函数在后 那这个问题要怎解决呢? 下面以这个报错为例 Strict Standards: Redefining already defined constructor for class alipay in /data/web/includes/modules/payment/alipay.php on line 85 找到文件alipay.php 使用编辑器打开,找到下面的构造函数 将

    function __construct()
    {
        $this->alipay();
    }
放到
    function alipay()
    {
    }
前面。 更改后如下图: Ecshop报错:Strict Standards: Redefining already defined constructor for class
class alipay
{

/**
* 构造函数
*
* @access public
* @param
*
* @return void
*/
function alipay()
{
}

function __construct()
{
$this->alipay();
}
更改后,我们重新访问网站,发现Strict Standards: Redefining already defined constructor for class alipay in /data/web/includes/modules/payment/alipay.php on line 85 这个报错就没有了。 如上述方法将所有的构造函数放到前面问题就能得到解决。 无忧主机相关文章推荐阅读: ECSHOP教程:设置商品详情页显示折扣和节省 ECSHOP替换系统中商品详情页部分的图片的ALT图片描述 ECSHOP程序如何在后台管理中心修改支付显示顺序的方法

本文地址:https://www.51php.com/ecshop/20382.html

1
1
1
1
1
1
1