zoukankan      html  css  js  c++  java
  • 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();
    ......
    }
    ......
    }
  • 相关阅读:
    对我比较有用的网站
    ubuntu各种安装
    arabaraba
    镜像源相关
    硬盘相关
    python模块
    递归和循环两种方式实现未知维度集合的笛卡尔积
    单例模式的两种实现方式
    经典String str = new String("abc")内存分配问题
    js方法的命名不能使用表单元素的名称或ID
  • 原文地址:https://www.cnblogs.com/hongchenok/p/2903698.html
Copyright © 2011-2022 走看看