初學php 看有人這樣寫,$CI =& get_instance();php
要你自定義的類庫中訪問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時存在問題,由於對象只有在類徹底實例化後才存在.session