codeigniter中 & get_instance()的應用

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

一般來說在你的控制器函數中你可以通過 $this 調用任何可用的CodeIgniter函數:

$this->load->helper('url');
$this->load->library('session');
$this->config->item('base_url');
etc.
$this, 只直接作用在你自己的控制器,模型和視圖中.當你在自定義類中想使用CodeIgniter原始類時,你可以這樣做:

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

$CI =& get_instance();

一旦定義某個對象爲一個變量,你就可以使用那個變量名 取代 $this:

$CI =& get_instance();

$CI->load->helper('url');
$CI->load->library('session');
$CI->config->item('base_url');
etc.
注意: 你將注意到get_instance()這個函數通過被引用的方式被傳遞:

$CI =& get_instance();

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

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章