Model view controller 在Opencart中加载库时如何传递参数?
我需要将参数传递给我的Opencart库类,该类使用$this->load->library'MyLib'加载。问题是加载程序只接受一个参数。我想这样做:Model view controller 在Opencart中加载库时如何传递参数?,model-view-controller,opencart,opencart2.x,opencart-3,Model View Controller,Opencart,Opencart2.x,Opencart 3,我需要将参数传递给我的Opencart库类,该类使用$this->load->library'MyLib'加载。问题是加载程序只接受一个参数。我想这样做: $this->load->library('MyLib', array('parameters') ); 加载库类时,如何将参数数组传递给库类?加载程序的库方法只允许单个参数:$route,但幸运的是,$this->registry作为单个参数传递给库的构造函数。要传递其他参数,只需在加载库之前将其作为属性分配给注册表类,如下所
$this->load->library('MyLib', array('parameters') );
加载库类时,如何将参数数组传递给库类?加载程序的库方法只允许单个参数:$route,但幸运的是,$this->registry作为单个参数传递给库的构造函数。要传递其他参数,只需在加载库之前将其作为属性分配给注册表类,如下所示:
$this->load->library('MyLib', array('parameters') );
$params=[
“参数1”=>“abc”,
'param_2'=>'def'
];
$this->registry->set'MyLib_params',$params;
//现在加载您的库
$this->load->library'MyLib';
然后,您可以在库构造函数中访问该属性,如下所示:
$this->load->library('MyLib', array('parameters') );
MyLib类{
公共函数\uuuu构造函数$registry{
$this->params=$registry->get'MyLib_params';
//使用$this->params进行操作
}
}
实际上,您还可以访问注册表中的任何内容,这些内容对于获取配置、会话、购物车等各种数据都很有用