有没有什么方法可以为每个函数(在控制器中)加载视图(用于页眉或页脚)?我有几个if/else
陈述,当我需要的时候改变它是很痛苦的。CodeIgniter - 自动加载视图?
1
A
回答
6
是的,您可以在控制器顶部的__construct
函数中加载视图。就拿 看看PHP手册上Constructors
function __construct()
{
parent::__construct();
$this->load>-view('your_view');
}
如果header
和footer
将要为您的网站的视觉部分常量和必需的组件,但你可能要加载之间的不同内容部分的页眉和页脚,那么你可以创建一个函数来接受一个参数。
private function doViews($argument)
{
$this->load->view('header');
$this->load->view($argument);
$this->load->view('footer');
return NULL;
}
您可能希望的doViews
函数内可用的意见阵列,为了做到这一点的文件存在适当的验证。然后你只需调用每个方法的功能在你的控制器是这样的:
$this->doViews('main_content');
0
你应该尝试使用模板库这样的:https://github.com/philsturgeon/codeigniter-template
然后,所有你需要的把这个控制器(可
$this->template->build('create', $this->data);
:可以在__construct或方法中)
$this->template->set_partial('header', 'layouts/header');
$this->template->set_partial('footer', 'layouts/footer');
$this->template->set_partial('sidebar', 'layouts/sidebar');
像你这样做视图然后发送数据0
0
,你可以创建你main_view ......作为一个已经有结构的母版页:
main_view.php
$this->load>-view('header');
<?php //get content here
?>
$this->load>-view('footer');
如果你想通过声明来改变在页眉或页脚的东西( )你可以添加内容:
function __construct()
{
parent::__construct();
$data['footer'] = ($a == 'foo') ? 'footer one' : 'footer two';
$data_to_main = $this->load->view('template/footer', $data, TRUE);
$data_to_main = 'others';
$this->load>-view('main_view', $data_to_main);
}
相关问题
- 1. 在CodeIgniter中动态加载视图
- 2. 在codeigniter中加载视图
- 3. 在Codeigniter中加载视图
- 4. 在视图中使用CodeIgniter自动加载模型
- 5. 自动加载语言codeigniter
- 6. 自动加载twilio在codeigniter
- 7. codeigniter自动加载或不加载
- 8. 作曲家自动加载重写codeigniter自动加载
- 9. 使EditText视图(zipcode)自动加载
- 10. 加载滚动来自plists的视图
- 11. 用纯文本加载视图codeigniter
- 12. jQuery未正确加载CodeIgniter视图
- 13. 如何加载视图内的div - codeigniter
- 14. Codeigniter在新标签中加载视图
- 15. codeigniter从数据库中加载视图
- 16. 如何加载iframe中的codeigniter视图
- 17. 使用ajax加载codeigniter中的视图
- 18. 不能在加载一个视图Codeigniter
- 19. 加载ajax调用后的视图,CodeIgniter
- 20. CodeIgniter:在新窗口中加载视图
- 21. Codeigniter重定向/加载视图
- 22. 在codeigniter中加载两次视图
- 23. Codeigniter - 视图加载时卡住
- 24. codeigniter,管理系统和自动加载
- 25. CodeIgniter 2调用自动加载模型
- 26. CodeIgniter和自动加载数据库库
- 27. 使用ID在codeigniter中动态加载视图
- 28. Codeigniter视图加载到一个视图,但不是另一个
- 29. CodeIgniter从另一个视图通过控制器加载视图
- 30. 不要加载codeigniter中的自动加载库
哦,谢谢!出于某种原因,我没有意识到我可以在'__construct'中做更多的事情,只是加载一个模型;)但是如何处理页脚? –
它只是一个功能,你可以用它做很多。 –
我不知道为什么我没有意识到它。你能告诉我关于这个页脚吗? –