为什么我不能在Codeigniter.2.2.1上从我的控制器中取出控制器?

时间:2015-02-09 14:48:33

标签: php codeigniter

我想创建一些控制器并从调用它,库将从核心中取代 这是 我的控制器

  <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
    class Page extends Frontend_Controller {

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

        public function index()
        {
                $this->load->view('main/main_index');
        }
    }
    ?>

以下是lirbray中的Frontend_Controller

 class Frontend_Controller extends MY_Controller{

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

以下是Core中的MY_Controller

 class MY_Controller extends CI_Controller{

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

但我得到了这个错误

Fatal error: Class 'MY_Controllers' not found in D:\My data\project\wamp\www\Ecom\application\controllers\page.php on line 3

Codeigniter2.2.1 中的错误 注意:它在 Codeigniter2.2.0

上完美无缺

1 个答案:

答案 0 :(得分:0)

Frontend_Controller不应该是一个库。您需要将它与my_controller一起放在应用程序的核心文件夹中,然后将自动加载器添加到my_controller。

将此自动加载器添加到my_controller.php的末尾:

/**
 * -------------------------------------------------------------------
 *  Native Autoload - by Phil Sturgeon. New Version!
 * -------------------------------------------------------------------
 *
 * Nothing to do with config/autoload.php, this allows PHP autoload to work
 * for base controllers.
 */
function __autoload($class)
{
    if (strpos($class, 'CI_') !== 0)
    {
        if (file_exists($file = APPPATH . 'core/' . $class . EXT))
        {
            include_once $file;
        }
    }
}


/* End of file MY_Controller.php */
/* Location: ./application/core/MY_Controller.php */