我正在使用HMVC codeigniter开展项目。我有自己的布局库和名为MY_Controller的基本控制器,代码如下:
class MY_Controller extends MX_Controller{
public $layout='layout_name';
public $theme='name';
...
public function __construct(){
parent::__construct();
...
}
}
我的问题是:
当我在库中使用$this->CI=& get_instance();
时,我的控制器的属性如$theme
不可用。例如,不能使用$this->CI->theme;
,但在控制器中没有问题,我可以在任何地方使用$this->theme;
。如何让一个实例在库中包含我的基本控制器变量?
答案 0 :(得分:0)
解决。根据{{3}},我使用加载库的第二个参数,并通过数组将我指定的变量发送到库。在mx_controller中:
class MY_Controller extends MX_Controller{
private $layout='default';
private $theme='white';
private $param=array();
public function __construct(){
parent::__construct();
$this->param=array('layout'=>$this->layout,'theme'=>$this->theme);
$this->load->library('lib',$this->param);
}
}