首页 > Codeigniter 控制器的继承问题

Codeigniter 控制器的继承问题

在项目中经常用到这样一种情况,后台中每个页面都要判断Session来确定用户是否登陆状态.对于在Codeigniter中,那么就会考虑每个控制器继承一个公用控制器。

比如:AdminBase 为应用后台的公用的控制器,在每一个应用后台控制器里面都来继承公共的AdminBase ,但是同时要确保AdminBase 也是继承CI_Controller的。

前台HomeBase也是同样的道理。

具体实现很简单,只要在application/core下面新建MY_Controller.php,如下

(MY_是可配置的,application/config/config.php 文件并找到这一项:$config['subclass_prefix'] = 'MY_';

class MY_Controller extends CI_Controller
{
function  __construct()
{
parent::__construct();
}
}class AdminBase extends MY_Controller
{
function  __construct()
{
parent::__construct();
......
}
......
}class HomeBase extends MY_Controller
{
function  __construct()
{
parent::__construct();
......
}
......
}

然后在application/controllers里面的控制器就可以继承了,比如application/controllers/admin/blog.php中

class Blog extends AdminBase
{function __construct()
{
parent::__construct();
......
}
......
}

 

 

转载于:https://www.cnblogs.com/hongchenok/archive/2013/02/06/2903698.html

更多相关:

  • 反向索引案例:CREATE TABLE my_tab(x VARCHAR2(20)); INSERT INTO my_tab VALUES('abcde'); COMMIT;CREATE INDEX my_tab_idx ON my_tab(REVERSE(x)); SELECT * FROM my_tab t WHERE REVE...