Php 在单个函数中生成多个视图
这是我的主控制器,我使用加载器函数作为通用函数并加载 菜单,标题和每个功能(索引,博客等)的页面,如果我想加载 两页纸我怎么做 我的意思是如果我想要$url=“index”和$url=“blog”,$url=“contact”Php 在单个函数中生成多个视图,php,function,codeigniter,Php,Function,Codeigniter,这是我的主控制器,我使用加载器函数作为通用函数并加载 菜单,标题和每个功能(索引,博客等)的页面,如果我想加载 两页纸我怎么做 我的意思是如果我想要$url=“index”和$url=“blog”,$url=“contact” 您可以通过更改$data的值来实现您的目标,即 $data['content']='contact' $this->load->view('template',$data); 然后在模板视图中执行此操作 $this->load->
您可以通过更改$data
的值来实现您的目标,即
$data['content']='contact'
$this->load->view('template',$data);
然后在模板视图中执行此操作
$this->load->view($content);
或者你也可以这样做
$url='contact'; //name of your view page here
$this->load->view($url,$data);
你可以用几种方法来做到这一点。在控制器中,您可以执行以下操作:
//true returns the view content as a string
$data['view1_html'] = $this->load->view('view1',$view1_data,true);
//then load your master view as normal
$this->load->view('master',$data);
或者在主视图中,您可以执行以下操作:
<?=$this->load->view('view1');?>
很抱歉,不清楚你问了什么。我的意思是如果我想传递到$url=index和$url=blog这样的视图,我该怎么做?将$url
设置为受保护的变量,这样就可以像$this->url
那样访问它。很难给你一个正确的答案,因为你的主函数view()
未包含在内,因此很难推断此类的工作方式。您的意思是希望能够使用上面的代码加载两个或多个视图,例如加载索引视图,然后加载博客视图(或类似的内容)?或者在另一个视图中加载一个视图?不,不应该,如果我这样做,它将每次加载,我应该只在特定的周期函数中加载。。谢谢
<?=$this->load->view('view1');?>
public function blog(){
....
$this->loader('blog',$menu,$data);
}