严重性:8192消息:与其类同名的方法将不是PHP的未来版本中的构造函数;

时间:2016-10-29 14:25:04

标签: php codeigniter codeigniter-2 codeigniter-3

严重程度:8192

消息:与其类同名的方法将不是PHP的未来版本中的构造函数; CI_Pagination有一个不推荐使用的构造函数

文件名:libraries / Pagination.php

行号:27

class CI_Pagination {

    var $base_url           = ''; // The page we are linking to
    var $total_rows         = ''; // Total number of items (database results)
    var $per_page           = 10; // Max number of items you want shown per page
    var $num_links          =  2; // Number of "digit" links to show before/after the currently viewed page
    var $cur_page           =  0; // The current page being viewed
    var $first_link         = '‹ First';
    var $next_link          = '>';
    var $prev_link          = '<';
    var $last_link          = 'Last ›';
    var $uri_segment        = 3;
    var $full_tag_open      = '';
    var $full_tag_close     = '';
    var $first_tag_open     = '';
    var $first_tag_close    = ' ';
    var $last_tag_open      = ' ';
    var $last_tag_close     = '';
    var $cur_tag_open       = ' ';
    var $cur_tag_close      = '';
    var $next_tag_open      = ' ';
    var $next_tag_close     = ' ';
    var $prev_tag_open      = ' ';
    var $prev_tag_close     = '';
    var $num_tag_open       = ' ';
    var $num_tag_close      = '';
    var $page_query_string  = FALSE;
    var $query_string_segment = 'per_page';

5 个答案:

答案 0 :(得分:7)

以前我们曾经使用类名本身声明类构造函数

Class A
{

public function a(){
}
}

现在你需要改变a()来构造,就像这样

public function __construct(){
}

错误将消失。

答案 1 :(得分:4)

新版本的php会发生这种情况,因此如果您想删除此错误,请使用_construct()而不是相同的类名称函数。

所以在这里你需要用户

class CI_Pagination {
 public function  __construct() {
 }
}

而不是

class CI_Pagination {
 public function CI_Pagination () {
 }
}

答案 2 :(得分:0)

class NewClass{
}
function __construct(){
} //is used inplace of a function named NewClass for constructor
  

将具有与类相同名称的函数名称更改为__construct,它将起作用。在Google Maps API v3中遇到了这样的问题

答案 3 :(得分:0)

对于Codeigniter

第一步:

class MyClass{
 function __construct(){
    // copy your old constructor function code here
 }
}

下一步(如果第一步不起作用):  打开application \ config \ autoload.php并编辑

$autoload['libraries'] = array('database', 'session','browser');

$autoload['libraries'] = array('database', 'session');

删除“浏览器”

答案 4 :(得分:-2)

Loader.php 414行,我已删除了Ampersent。

$CI->dbutil =& new $class();

$CI->dbutil = new $class();

它在php5.x中运行良好。