Codeigniter Parser在另一个Parser里面

时间:2015-09-29 12:59:34

标签: codeigniter parsing

我正在使用Codeigniter进行项目,我使用当前代码通过解析器加载主页面,并使用加载视图加载顶部和侧面菜单:

public function index(){

    $main = [
        'main_nav' => $this->load->view('nav/main_nav', NULL, TRUE),
        'top_nav' => $this->load->view('nav/top_nav', NULL, TRUE),
    ];

    $this->parser->parse('main_view', $main);
}

通过这种方式,我可以更改导航一次,并在所有页面中进行更改。 我需要通过“解析器”来完成它,因为我必须传递一些变量和函数。

如果我使用解析器而不是视图更改main_navtop_nav,则会收到错误。

有没有办法在另一个解析器中加载解析器?

1 个答案:

答案 0 :(得分:0)

我发现你不能传递NULL作为Parser的第二个参数,必须是一个数组(可以是空的,但不能省略)。

所以这个:

$this->load->view('nav/main_nav', NULL, TRUE);

成为这个:

$content = [];
$this->parser->parse('nav/main_nav', $content, TRUE);

$this->parser->parse('nav/main_nav', [], TRUE);