关于ECSHOP模板架设的服务器php版本过高报错的解决方法(一)

1、admin/index.php

admin/sms_url.php

 ECSHOP模板

报错:Strict Standards: mktime(): You should be using the time() function instead in /data/web/ledetaoadmin/sms_url.php on line 31

$auth = mktime();

替换为:

$auth = time();

报错:Strict Standards: Only variables should be passed by reference in /data/web/includes/lib_main.php on line 1336

2、lib_main.php

         $ext = end(explode('.', $tmp));

替换为:

      $ext = end();  

     $ar = explode('.', $tmp);

     $ext = end($ar);

继续报错 ECSHOP模板

Warning: end() expects parameter 1 to be array, null given in /data/web/includes/lib_main.php on line 1336

将刚刚的代码改成:

         $arr=array();

         $ext = end($arr);  

    $ar = explode('.', $tmp);

    $ext = end($ar);

3、cls_template.php

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

替换为: ECSHOP模板

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

                            $tag_sel = array_shift($tag_arr);

4、cls_captcha.php

    /**

     * 构造函数

     *

     * @access  public

     * @param

     *

     * @return void

     */

    function __construct($folder = '', $width = 145, $height = 20)

    {

        $this->captcha($folder, $width, $height);

    }

移动到:

    /**

     * 构造函数

     *

     * @access  public

     * @param   string  $folder     背景图片所在目录

     * @param   integer $width      图片宽度

     * @param   integer $height     图片高度

     * @return  bool

     */

前面

  ECSHOP模板

5、adminincludescls_sql_dump.php

    /**

     *  类的构造函数

     *

     * @access  public

     * @param

     *

     * @return void

     */

    function __construct(&$db, $max_size =0)

    {

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

    }

移动到:

    /**

     *  类的构造函数

     *

     * @access  public

     * @param

     *

     * @return void

     */

前面

Strict Standards: Redefining already defined constructor for class chinabank in /data/web/includes/modules/payment/chinabank.php on line 85

Strict Standards: Redefining already defined constructor for class paypal_ec in /data/web/includes/modules/payment/paypal_ec.php on line 96

Strict Standards: Redefining already defined constructor for class shenzhou in /data/web/includes/modules/payment/shenzhou.php on line 81

Strict Standards: Redefining already defined constructor for class ips in /data/web/includes/modules/payment/ips.php on line 82

Strict Standards: Redefining already defined constructor for class balance in /data/web/includes/modules/payment/balance.php on line 79

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 tenpay in /data/web/includes/modules/payment/tenpay.php on line 83

Strict Standards: Redefining already defined constructor for class post in /data/web/includes/modules/payment/post.php on line 79

Strict Standards: Redefining already defined constructor for class paypal in /data/web/includes/modules/payment/paypal.php on line 82

Strict Standards: Redefining already defined constructor for class tenpayc2c in /data/web/includes/modules/payment/tenpayc2c.php on line 83

Strict Standards: Redefining already defined constructor for class cappay in /data/web/includes/modules/payment/cappay.php on line 81

Strict Standards: Redefining already defined constructor for class bank in /data/web/includes/modules/payment/bank.php on line 79

Strict Standards: Redefining already defined constructor for class kuaiqian in /data/web/includes/modules/payment/kuaiqian.php on line 83

Strict Standards: Redefining already defined constructor for class cod in /data/web/includes/modules/payment/cod.php on line 82

 

解决办法:

将所有的构造函数放到前面:

如alipay.php

    function __construct()

    {

        $this->alipay();

    }

放到

    function alipay()

    {

    }

前面。

原文地址:https://www.cnblogs.com/sunny520/p/6265903.html