<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); /** * CodeIgniter * * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 * @filesource */ // ------------------------------------ /** * CodeIgniter Application Controller Class * 应用程序控制器类 * * This class object is the super class that every library in * CodeIgniter will be assigned to. * * * @package CodeIgniter * @subpackage Libraries * @category Libraries * @author ExpressionEngine Dev Team * @link http://codeigniter.com/user_guide/general/controllers.html */ class CI_Controller { private static $instance; /** * Constructor */ public function __construct() { // 通过self::$instance实现单例化,在第一次实例时,这个静态变量实质就是引用了这个实例。 // 以后都可以通过&get_instance();来获得这个单一实例。构成这样的单例模式的 // 好处就是单例类不会重复占用内存和系统资源而是让应用程序的其他部分更好的使用这些资源。 self::$instance =& $this; // Assign all the class objects that were instantiated by the // bootstrap file (CodeIgniter.php) to local class variables // so that CI can run as one big super object. // 分配在引导文件(CodeIgniter.php)中被实例化的类对象给$this // 这样CI可以运行一个超级对象。其实意思就是 // 把目前程序已经加载的所有的组件都给这个超级控制器来掌管。 foreach (is_loaded() as $var => $class) { $this->$var =& load_class($class); } // 给超级控制器加载Loader组件,这个组件是它的好助手, // 很多时候你会经常用到$this->load->xxx()的形式加载某个东西, // 这个load就是控制器被构造的时候就伴随存在的。 $this->load =& load_class('Loader', 'core'); // 初始化Loader组件,详细Loader.php $this->load->initialize(); log_message('debug', "Controller Class Initialized"); } public static function &get_instance() { return self::$instance; } } // END Controller class /* End of file Controller.php */ /* Location: ./system/core/Controller.php */
详细解决方案
CI框架源码翻阅-Controller.php
热度:570 发布时间:2013-03-13 10:56:58.0
相关解决方案
- MVC 三 传递 List 数据 到 Controller
- new { controller = new NotEqual("Admin")} 报错解决方案
- mvc3.0 实业 controller view 关系
- 打开OFFICE word 2007跟OFFICE word 2010,提示: the setup controller has encountered a p
- spring mvc 中如何使用aop拦截到@controller?
- .NET/ASP.NETMVC Controller 控制器(1:深入解析控制器运行原理)
- CI框架源码翻阅-Controller.php
- 3查的View & Controller binding
- AngularJS:几时应该使用Directive、Controller、Service
- extjs 4.1.1 controller 监听button的有关问题
- spring3 controller 应用json format返回数据
- spring注解相关的有关问题@Repository , @Service , @Controller 和 @Component
- Controller(SoringMVC),service,dao三层的功用
- 如何写dao,service,controller,地图per
- Agent Controller XML解析出错.情!
- 部类参数约束 : Controller where T : class,new()
- tabbar controller 怎样增加一个选项?该怎么处理
- Cstyle的笔记,R&D必读手册,第4.1篇 Embedded Ethernet Controller (续)
- Cstyle的笔记,R&D必读手册,第4篇 Embedded Ethernet Controller
- linux3.0.1 内核编译失败,加了Media Controller API 出现异常
- Pocket Controller Pro 如何样才能连接wince6.0 机器使用
- CI框架源码翻阅-Controller.php
- Android ApiDemos示范解析(27):App->Notification->Notifying Service Controller
- SpringMVC 浜?controller
- Spring MVC 中的基于引语的 Controller
- office 打开提示 the setup controller has encountered a . . 异常
- 5.3 create a controller for users to register our site
- Node JS Controller-调用具有回调的函数
- 如何使用JUnit和Mockito使用静态util调用来测试Rest Controller
- 脱离ZooKeeper依赖的Kafka Controller Quorum(KRaft)机制浅析