CodeIgniter中是否有任何选项加载参数的文件,如在视图中?
在我的控制器中,我加载了这个文件:
$path_to_logic = "extended_core/plugins/saphir_e-cms/be_extensions/$this->modul_id/package/logic.php";
$logic = $this->CI->load->file($path_to_logic, true);
我在控制器中有一个array()
,我会传递给加载的文件,就像视图中的$data
var一样。
答案 0 :(得分:1)
您需要将此功能添加到Loader
类。
为了做到这一点,在MY_Loader.php
文件夹中创建一个名为application/core/
的新文件,如下所示:
/**
* My Custom Loader
*/
class MY_Loader extends CI_Loader
{
function __construct()
{
parent::__construct();
}
/**
* Custom File loader method
*
* @param string $path
* @param array $vars
* @param bool $return
* @return void
*/
public function file($path, $vars = array(), $return = FALSE)
{
return $this->_ci_load(array(
'_ci_path' => $path,
'_ci_vars' => $this->_ci_object_to_array($vars),
'_ci_return' => $return
));
}
}
然后使用以下值加载文件:
$logic = $this->CI->load->file($path_to_logic, array('foo' => 'bar'), true);
在文件中,您将拥有$foo
。
答案 1 :(得分:0)
为什么不给它分配这样的东西..
$this->CI->custom_array = array();
$this->CI->custom_array = // Load in array data via function etc..
然后在视图等中使用它。