如何在Codeigniter中的抽象类中获取get_instance?

时间:2015-01-31 11:38:54

标签: php codeigniter

有三个类:

标准控制器类:

class LoaderContent extends CI_Controller {
        public function __construct(){
        $obj = new SearchNew();
      }
}


abstract class Search
{
// Get here access to get_instance
}


class SearchNew extends Search
{
    public function __construct()
    {

        parent::__construct($type);
    }
}

如何访问抽象类中的Codeigniter实例?

1 个答案:

答案 0 :(得分:0)

在Codeigniter中,get_instance()是一个全局可用的函数,它返回包含所有当前加载的类的Controller超级对象(它返回Controller类实例)。 首先,将CodeIgniter对象分配给变量:

$CI =& get_instance();

将对象分配给变量后,您将使用该变量而不是$ this:

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

注意:您会注意到上面的get_instance()函数正在通过引用传递:

$CI =& get_instance();