在codeigniter中调用load函数时遇到问题

时间:2012-11-15 04:29:04

标签: php codeigniter

我在codeigniter中加载视图并在我的控制器中调用$this->load->view('login');。但它给了我以下错误

 Severity: Notice

 Message: Undefined property: Login::$load

 Filename: controllers/login.php

 Line Number: 6

 Fatal error: Call to a member function view() on a non-object in /Applications/XAMPP/xamppfiles/htdocs/membership_system/application/controllers/login.php on line 6

这是我的控制器

 class Login extends CI_Controller {

public function index() {
    $this->load->view('login'); //<-- error is on this line
}

public function login() {

}

public function register() {

}
}

我该如何解决这个问题?

更新

当我将班级名称从Login更改为Something_login时,这样可行,但仅限于Login,这会让我产生上述错误。为什么呢?

2 个答案:

答案 0 :(得分:1)

功能名称必须与您的班级名称不同。

答案 1 :(得分:0)

这是一个PHP“限制” - 它是PHP 4的向后兼容性功能,您没有__construct(),并且与类名称匹配的方法名称作为类构造函数执行。

如果你改为调用PHP5风格的构造函数,你可能会解决这个问题,只需确保调用它中的父元素:

public function __construct()
{
     parent::__construct();
}

此外,如果您在命名空间内,情况并非如此,但CodeIgniter目前不会利用这些与旧版PHP兼容。

相关问题