Codeigniter控制器controller继承问题实例分析

春天到了,各种绚丽的花朵都开放了,金黄的油菜花,成了蝴蝶的天地,美丽的蝴蝶在金黄色的舞台上跳着柔和而优美的舞姿。它们一会儿在空中飞舞,一会儿静静地停留在油菜花上。给春天增添了不少乐趣。油菜花的美丽,同时也吸引了不少 "劳动人民 "——蜜蜂,它们总是不分昼夜地不辞辛劳地给油菜花授粉。偶尔一阵微风吹来,金黄的油菜花立刻涌起了高低起伏的 "金浪花 "。远远望去,真是美不胜收!

本文实例讲述了Codeigniter控制器controller继承问题。分享给大家供大家参考,具体如下:

在项目中经常用到这样一种情况,后台中每个页面都要判断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();
......
}
......
}

希望本文所述对大家基于CodeIgniter框架的PHP程序设计有所帮助。

本文Codeigniter控制器controller继承问题实例分析到此结束。美丽的蓝图,落在懒汉手里,也可是是一页废纸。小编再次感谢大家对我们的支持!