CodeIgniter 2:如何多次扩展CI_Controller?
我通过创建一个放置在应用程序/核心目录中的MY_Controller.php成功地扩展了CI_Controller类。
核心/My_Controller.php看起来像这样:
class MY_Controller extends CI_Controller {
function __construct()
{
parent::__construct();
}
}
然后,当我创建普通控制器时,它们看起来像这样:
class Home extends MY_Controller {
function __construct()
{
parent::__construct();
}
function index()
{
$this->load->view('home');
}
}
我正在创建一个管理后端,我希望控制器扩展一个不同的基类,而不是My_Controller。这样我就可以拥有管理控制器的常用方法(即authentication_check等)。
我无法弄清楚的是,我如何创建另一个扩展CI_Controller控制器。
目标是让管理控制器扩展与前端控制器不同的基类。
管理基本控制器将如下所示:
class MY_Admin_Controller extends CI_Controller {
function __construct()
{
parent::__construct();
}
}
用于管理页面的普通控制器:
class Admin_home extends MY_Admin_Controller {
function __construct()
{
parent::__construct();
}
function index()
{
$this->load->view('admin_home');
}
}
问题是,要扩展CI_Controller类,您必须将控制器文件命名为PREFIX_Controller.php并将其放在core/目录中。但是我想要两个控制器类,它们不能具有相同的文件名。