Php 如何将数据绑定到Codeigniter中的视图(如laravel中的视图生成器)?

Php 如何将数据绑定到Codeigniter中的视图(如laravel中的视图生成器)?,php,codeigniter,Php,Codeigniter,这个任务可以很容易地在laravel中存档,但我现在使用的是Codeigniter,这里没有view Composer之类的东西。我现在做的是创建一个自定义视图方法,如下所示 If you have data that you want to be bound to a view each time that view is rendered,a view composer can help you ... 此方法以“字符串”形式返回视图,它不能与json或复杂页面一起使用。。。。谢谢。好的,

这个任务可以很容易地在laravel中存档,但我现在使用的是Codeigniter,这里没有view Composer之类的东西。我现在做的是创建一个自定义视图方法,如下所示

If you have data that you want to be bound to a view each time that view is
rendered,a view composer can help you ...

此方法以“字符串”形式返回视图,它不能与json或复杂页面一起使用。。。。谢谢。

好的,让我们简单一点

public function view($page,$params=null,$return=false)
{
// Every time I invoke this method, $nav will be passed to 'navigation' view.
$nav=[
    'user' =>'Adam'
];

//return the views as view_partials instead of displayed
$view_partials = array(
    'navigation' => $this->obj->load->view('partials/nav',$nav,true),
    'page_content' => $this->obj->load->view($page,$params,true)
);
// load layout with the view_partials which contain bound data.
$this->obj->load->view($this->_layout,$view_partials,$return);
}

这将呈现html页面

如果希望以字符串形式获取html页面,请将第三个参数设置为
TRUE

$this->load->view(path_to_htmlpage, $bound_data); // by default 3rd param is FALSE
检查


在您的查看页面ie.your_页面中,您可以使用变量$navigation和$page_content来显示页面

如果有人有相同的问题,请单击
$this->load->view(path_to_htmlpage, $bound_data); // by default 3rd param is FALSE
$html_string = $this->load->view(path_to_htmlpage, $bound_data, TRUE);
public function view($page,$params=null,$return=false)
{

$nav['user']='adam';


$data['navigation']= $this->load->view("partials/nav",$nav,true);
$data['page_content'] = $this->load->view($page,$params,true)


$this->load->view('your_page',$data);
}