CI-CodeIgniter中「超級對象」:$CI =& get_instance()

要你自定義的類庫中訪問CodeIgniter的原始資源,你必須使用 get_instance() 函數.這個函數返回一個CodeIgniter super object.php

通常來講在你的控制器函數中你能夠經過 $this 調用任何可用的CodeIgniter函數:session

$this->load->helper('url');
$this->load->library('session');
$this->config->item('base_url');函數

$this, 只直接做用在你本身的控制器,模型和視圖中.當你在自定義類中想使用CodeIgniter原始類時,你能夠這樣作:this

首先,定義CodeIgniter對象賦給一個變量:url

$CI =& get_instance();對象

一旦定義某個對象爲一個變量,你就能夠使用那個變量名 取代 $this:資源

$CI =& get_instance();get

$CI->load->helper('url');
$CI->load->library('session');
$CI->config->item('base_url');it

注意: 你將注意到get_instance()這個函數經過被引用的方式被傳遞:io

$CI =& get_instance();

這十分重要. 經過引用的方式賦給變量將使使用原始的CodeIgniter對象,而不是建立一個拷貝

同時,請注意: 若是你使用php 4,那麼請最好不要在類的構造函數中調用 get_instance() .php4在引用位於構造函數中的CI super object時存在問題,由於對象只有在類徹底實例化後才存在.

相關文章
相關標籤/搜索