Codeigniter,php5,致命错误:找不到类'控制器'

时间:2010-09-02 22:08:46

标签: php codeigniter

致命错误:第3行<local_path>\system\application\controllers\welcome.php未找到“控制器”类

<?php

class Welcome extends Controller {

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

    function index()
    {
        $this->load->view('welcome_message');
    }
}

/* End of file welcome.php */
/* Location: ./system/application/controllers/welcome.php */

我是初学者在php框架中刚刚提取了CodeIgniter zip文件,并尝试在Aptana studio中运行welcome.php控制器。 (PHP 5)

5 个答案:

答案 0 :(得分:4)

无需定义类的构造函数。这是codeigniter 2.0或更高版本框架的代码。

class Welcome extends CI_Controller {

    public function index()
    {
        $this->load->view('welcome_message');
    }
}

答案 1 :(得分:2)

问题是我直接访问这个文件(就像'treeface'所说的那样),但使用这条路线会生成找不到的页面?

  

127.0.0.1:8000/test_ci/index.php/welcome

然后我安装了WAMP并使用了

  

本地主机/ test_ci / index.php的/欢迎

这是有效的! 很抱歉给您带来不便!

答案 2 :(得分:2)

因为您使用旧版CodeIgniter的代码,所以请使用:

class Hello extends CI_Controller
{
    var $name;
    var $color;
    function Hello()
    {
        parent :: __construct();
        $this->name = "Name";
        $this->color = "red";
    }
    function you()
    {
        $data["name"] = $this->name;
        $data["color"] = $this->color;
        $this->load->view("you_view", $data);
    }

}

答案 3 :(得分:1)

扩展CI_Controller而不是Controller 在切换到CI_Controller

之前,我在代码点火器中遇到了同样的问题

答案 4 :(得分:0)

似乎您将Codeigniter放在与'/'不同的文件夹中。如果不更改index.php或config.php中的BASEPATH或系统根路径,则会导致问题。

检查index.php中第14-26行(?)的“system”变量。

/*
|---------------------------------------------------------------
| SYSTEM FOLDER NAME
|---------------------------------------------------------------
|
| This variable must contain the name of your "system" folder.
| Include the path if the folder is not in the same  directory
| as this file.
|
| NO TRAILING SLASH!
|
*/
    $system_folder = "system";

更改它以反映系统文件夹的路径,CI肯定会找到您的控制器类。