继续对codeigniter的mvc框架进行学习,本文学习的mvc中的视图view。视图层是主要用来显示内容的框架,包括头,尾等,主要是静态的html骨架。前面一篇文章有了控制层,控制可以调用view视图层进行前端页面的展示。
1.首先ci的视图位置是在:application/views/下
2.视图文件创建,默认的可以创建.php视图,可以使用其他扩展名的视图,比如html,tpl等。
比如创建上一篇文章的pages视图,命名为pages.php,代码
<html>
<head><title>
<?php echo $title;?>
</title>
</head><body>this is a view .
</body></html>
可以在视图内创建文件夹,方便管理。
3.访问视图,访问图是通过控制器来操作的,还是上一篇文章的控制器
当url请求为www.anypoetry.com/index.php/pages 的时候会调用控制器pages,并调用index函数,
那么我们定义控制器的index函数。
class pages extends ci_controller{
function __contruct(){
parent::__contruct();
}
publiction index(){
$this->load->view('pages') //这里调用对应的视图
}
}
当调用文件夹内的视图时,比如 jy/pages 视图
则调用时加上文件夹即可
$this->load->view('jy/pages');
当使用其他后缀的视图时,则要加上视图的后缀名
比如pages.tpl
$this->load->view(pages.tpp);
4.给视图view传递数据。传递的数据是数组格式。
比如
$data['title']='this is view show';
$data['content']='this is view content';
传递方法
$this->load->view(pages,$data);
这样就将$data数组传递个pages。
在 pages 的view页面中可以直接使用
<html>
<head><title>
<?php echo $title;?> 这里会输出this isview show
</title>
</head><body><?php echo $content;?>这里会输出 this is view content
</body></html>
5.获取视图的返回字符串,即通过load->view
获取view返回的字符串,不直接输出
这个只是个load->view 的参数,在最后面添加 布尔值 true。默认为false,不做操作直接输出
举例,在控制器里面调用pages
$string = $this->load->view(pages,$data,true);
$string = $this->load->view(pages,true);
这样页面返回的内容将给$string,而不会直接输出。
更多信息请查看IT技术专栏