个人认为最好的包含 header 和 footer 的方法!
刚接触CodeIgniter几天,觉得挺不错的,遇到了一些小问题,比如这个:看了很多的关于包含 header 和 footer 的方法,但是觉得都不是太理想。
无意中看到了在英文官网的上的一段代码,就补充了一下,希望对大家有用。
控制器:
<?php
class Picture extends Controller {
function __construct()
{
parent::Controller();
}
function view2($view, $data)
{
$header_data['title'] = 'CodeIgniter Home Page';
$footer_data['copyright'] = '版权: qfly888';
//将数组合并
$data = array_merge($header_data, $data, $footer_data);
$this->load->view('header_view', $data);
$this->load->view($view);
$this->load->view('footer_view');
}
function index()
{
$data['content'] = 'Content';
$this->view2('picture_view', $data);
}
}
?>
在视图中建header_view.php 和 footer_view.php. 补充一下: 可以把这个函数保存在文件中,然后在构造函数中导入。 过来看看, 本人用smarty 与ci 结合版本!! header 和 footer 内容不需要读数据库,直接在视图里 $this->load->view
如果需要读数据库,就hmvc
你的方法没看懂。。。。。 贴上那个英文官网的url多好啊,你这做法有点费解 上善若水 发表于 2011-1-2 14:26 static/image/common/back.gif
header 和 footer 内容不需要读数据库,直接在视图里 $this->load->view
如果需要读数据库,就hmvc
用HMVC的话有个效率上的问题。
如果header和footer需要读的数据一样的话,就需要读两次数据库。 baiyuxiong 发表于 2011-9-4 10:35 static/image/common/back.gif
用HMVC的话有个效率上的问题。
如果header和footer需要读的数据一样的话,就需要读两次数据库。 ...
不会的 header footer 的数据一般是不变的。可以缓存起来。
下次读的时候不需要在读数据库了。根据现实需要设计缓存过期时间就成了
我一般是设成永不过期,在后台添加数据时,直接更新 那两个缓存文件就成了 思想还可以,我是菜鸟:lol 也可以将header和footer的视图加载结果保存到字符串变量中如 $string = $this->load->view('myfile', '', true);,再将这个变量传递给主视图进行输出。 这个方法好在哪里呢?更复杂吗?
页:
[1]
2