zoukankan      html  css  js  c++  java
  • 十一)CodeIgniter源码分析之Controller.php

     1 <?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');
     2 
     3 /**
     4  * CodeIgniter Application Controller Class
     5  */
     6 class CI_Controller {
     7 
     8  private static $instance;
     9 
    10  /**
    11   * Constructor
    12   */
    13  public function __construct()
    14  {
    15   //通过self::$instance实现单例化,在第一次实例时,这个静态变量实质就是引用了这个实例。
    16   //以后都可以通过&get_instance();来获得这个单一实例。
    17   self::$instance =& $this;
    18   
    19   //把目前程序已经加载的所有的组件都给这个超级控制器来掌管。
    20   foreach (is_loaded() as $var => $class)
    21   {
    22    $this->$var =& load_class($class);
    23   }
    24 
    25   //给超级控制器加载Loader组件,这个组件是它的好助手,很多时候你会经常用到$this->load->xxx()的形式加载某个东西,
    26   //这个load就是控制器被构造的时候就伴随存在的。
    27   $this->load =& load_class('Loader', 'core');
    28 
    29   //初始化Loader组件,详细Loader.php
    30   $this->load->initialize();
    31   
    32   log_message('debug', "Controller Class Initialized");
    33  }
    34 
    35  public static function &get_instance()
    36  {
    37   return self::$instance;
    38  }
    39 }
  • 相关阅读:
    delphi 如何让ScrollBox的内容与滚动条一起实时滚动
    C# Wpf集合双向绑定
    C# Wpf异步修改UI,多线程修改UI(二)
    C# 自定义线程修改UI(一)
    WPF FindName()查找命名注册的元素
    数据绑定
    WPF绑定Binding及模式
    WPF-Binding的源
    WPF-Binding对数据的检验
    WPF-数据转换
  • 原文地址:https://www.cnblogs.com/qxbj/p/4415250.html
Copyright © 2011-2022 走看看