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


Posted in PHP onJanuary 19, 2016

本文实例讲述了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程序设计有所帮助。

PHP 相关文章推荐
php zend解密软件绿色版测试可用
Apr 14 PHP
php 文件夹删除、php清除缓存程序
Aug 25 PHP
php安装xdebug/php安装pear/phpunit详解步骤(图)
Dec 22 PHP
discuz加密解密函数使用方法和中文注释
Jan 21 PHP
php强大的时间转换函数strtotime
Feb 18 PHP
Zend Framework教程之Autoloading用法详解
Mar 08 PHP
Zend Framework教程之Loader以及PluginLoader用法详解
Mar 09 PHP
php实现图片上传时添加文字和图片水印技巧
Apr 18 PHP
Windows2003下php5.4安装配置教程(Apache2.4)
Jun 30 PHP
Laravel学习教程之从入口到输出过程详解
Aug 27 PHP
PHP实现的折半查询算法示例
Oct 09 PHP
php+js实现裁剪任意形状图片
Oct 31 PHP
php pthreads多线程的安装与使用
Jan 19 #PHP
PHP+swoole实现简单多人在线聊天群发
Jan 19 #PHP
PHP各种异常和错误的拦截方法及发生致命错误时进行报警
Jan 19 #PHP
[原创]CI(CodeIgniter)简单统计访问人数实现方法
Jan 19 #PHP
PHP数组去重比较快的实现方式
Jan 19 #PHP
PHP保存session到memcache服务器的方法
Jan 19 #PHP
PHP mysql事务问题实例分析
Jan 18 #PHP
You might like
php define的第二个参数使用方法
2013/11/04 PHP
yii2.0实现验证用户名与邮箱功能
2015/12/22 PHP
php 判断页面或图片是否经过gzip压缩的方法
2017/04/05 PHP
php上传excel表格并获取数据
2017/04/27 PHP
Yii2框架可逆加密简单实现方法
2017/08/25 PHP
jQuery在IE下使用未闭合的xml代码创建元素时的Bug介绍
2012/01/10 Javascript
jQuery中(function(){})()执行顺序的理解
2013/03/05 Javascript
EditPlus注册码生成器(js代码实现)
2013/03/25 Javascript
js验证是否为数字的总结
2013/04/14 Javascript
JQuery实现当鼠标停留在某区域3秒后自动执行
2014/09/09 Javascript
Node.js中JavaScript操作MySQL的常用方法整理
2016/03/01 Javascript
Bootstrap前端开发案例一
2016/06/17 Javascript
D3.js实现折线图的方法详解
2016/09/21 Javascript
AngularJS模态框模板ngDialog的使用详解
2018/05/11 Javascript
微信小程序BindTap快速连续点击目标页面跳转多次问题处理
2019/04/08 Javascript
vue-iview动态新增和删除的方法
2020/06/17 Javascript
vue cli3.0打包上线静态资源找不到路径的解决操作
2020/08/03 Javascript
python制作一个桌面便签软件
2015/08/09 Python
PyCharm设置SSH远程调试的方法
2018/07/17 Python
浅谈django的render函数的参数问题
2018/10/16 Python
对python 中class与变量的使用方法详解
2019/06/26 Python
Django多数据库配置及逆向生成model教程
2020/03/28 Python
python3中sys.argv的实例用法
2020/04/24 Python
keras读取h5文件load_weights、load代码操作
2020/06/12 Python
websocket+sockjs+stompjs详解及实例代码
2018/11/30 HTML / CSS
浅谈amaze-ui中datepicker和datetimepicker注意的几点
2020/08/21 HTML / CSS
Brydge英国:适用于Apple iPad和Microsoft Surface Pro的蓝牙键盘
2019/05/16 全球购物
几道数据库的概念性面试题
2014/05/30 面试题
大学生就业自我鉴定
2013/10/26 职场文书
电子商务专业学生的自我鉴定
2013/11/28 职场文书
党的群众路线教育实践活动心得体会900字
2014/03/07 职场文书
公司股东合作协议书
2014/09/14 职场文书
2014年工程师工作总结
2014/11/25 职场文书
南京南京观后感
2015/06/02 职场文书
张丽莉事迹观后感
2015/06/16 职场文书
SpringBoot使用ip2region获取地理位置信息的方法
2022/06/21 Java/Android