cmsphp 发表于 2011-4-20 13:50:13

codeigniter之生成静态页面

如何让CI生成静态页面。下面直接帖代码:
$this->output->get_output();

使用这个方法,你可以可以得到将要输出的数据,并把它保存起来,留着它用(我们做新闻类型网站的时候,常常需要生成静态的HTML文件). Usage example:

$string = $this->output->get_output();
$this->load->helper('file');
write_file('./admpub_codeigniter.html', $string);

比如我们要输出的页面是要加载某个视图后的数据,那么我们就在
       
$this->load->view('welcome_admpub');

之后加入       
$this->output->get_output();

并把值给一个变量如$admpub存储起来.再用CI的FILE中的write_file辅助函数,生成你要的文件,如下例:
       
function sc(){
$this->load->helper('file');
$this->load->view('welcome_message');
$lianglong=$this->output->get_output();
if ( !write_file('./admpubfile.html', $admpub))
{
    echo 'Unable to write the file';
}
else
{
    echo 'File written!';
}

}

Struggle 发表于 2012-4-6 11:34:26

我想知道,获取数据后怎么清除的,因为我同时还要生成另一个页面内容

Hex 发表于 2012-4-6 13:19:50

Struggle 发表于 2012-4-6 11:34 static/image/common/back.gif
我想知道,获取数据后怎么清除的,因为我同时还要生成另一个页面内容

你重新 load->view() 再 get_output 就行了。。。
页: [1]
查看完整版本: codeigniter之生成静态页面