CodeIgniter 是基于MVC框架应运程序的web框架。MVC即Model、View、Controller。
看起来云里雾里的,接下来我慢慢解释这三者间的关系。
首先,讲 View和Controller的关系。 这里举一个加载静态页面方法的例子。
首先针对某个URL的请求,如 http://example.com/news/latest/。
这个URL暗藏着一些含义,它是具有固定格式的,http://example.com/[控制器类名]/[控制器方法名]/[所需参数]。
从这里可以看出,服务器通过URL地址,分析出使用的是哪个控制器,使用的是控制器中的哪些方法。如上面的例子,就是使用的控制器news(其实为一个类,该类保存在一个.php文件里),使用该类里latest的方法。
该类的定义如下:
<?php
class Pages extends CI_Controller {
public function view()
{
$this->load->view('pages/index.php');
}
}
view方法就是使用CodeIgniter自带的函数,输出 index.php视图。
这个就是 view和controller之间的关系了。综合来说,就是服务器通过分析URL的地址,然后采用哪个控制器,及方法,完成相应的动作。这能够使得控制与视图的分离。