内容摘要
帝国cms模板架设的服务器php版本过高报错的解决方法集合 文章正文
1、admin/index.php
admin/sms_url.php
报错: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 line1336
 
2、lib_main.php
         $ext = end(explode('.', $tmp));
替换为:
         $ext = end();  
     $ar = explode('.', $tmp);
     $ext = end($ar);
继续报错
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));
替换为:
                            $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
     */
前面


5、admin/includes/cls_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()
    {
    }
前面。 代码注释