CodeIgniter的优势:
- 轻量级框架
- 出色的性能
- 广泛兼容标准主机上的各种PHP版本和配置
- 0配置
- 不需要使用命令行
- 不需坚守限制性编码规则
CodeIgniter最新版本的下载地址:http://www.codeigniter.org.cn/
下载压缩包后解压,包含如下内容:
- application目录:编写程序的目录,其中包含了实现mvc模式的models、views和controllers目录
- system目录:CodeIgniter框架代码,不能修改,否则以后升级时无法替换
- user_guide目录:用户手册,英文版的
- index.php文件:入口文件
- license.txt文件:版权许可文件
复习一下MVC模式的实现,创建一个入口文件index.php
<?php
header("Content-Type:text/html;charset=utf-8");
// 获得控制器名称
$c= $_GET['c'];
// 包含控制器所在文件
include './controllers/' . $c .'Controller.php';
// 实例化控制器
$className = $c . 'Controller';
$controller = new $className();
// 获得方法名
$a = $_GET['a'];
// 调用方法
$controller->$a();
?>
再创建数据模型文件UserModel.php文件,放在models目录下
<?php
class UserModel
{
public function getAllUsers()
{
$list = array(
array('id'=>1, 'name'=>'jack', 'email'=>'jack@gmail.com'),
array('id'=>2, 'name'=>'mary', 'email'=>'mary@gmail.com'),
array('id'=>3, 'name'=>'lili', 'email'=>'lili@gmail.com'),
);
return $list;
}
}
?>
再创建控制器文件UserController.php文件,放在controllers目录下
<?php
class UserController
{
public function index()
{
// 调用模型方法,获取数据
include './models/UserModel.php';
$model = new UserModel();
$list = $model->getAllUsers();
// 包含视图文件
include './views/User/index.php';
}
}
?>
最后创建视图文件index.php文件,放在views目录下,这里仅简单的显示数组
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
这是User控制器的index方法的视图
<?php
echo "<br />";
var_dump($list);
?>
</body>
</html>
通过url传入控制器名称和方法名:http://localhost:8080/testCodeIgniter/mvc/index.php?c=user&a=index
显示效果如下:
MVC总结:
入口文件是唯一一个让浏览器请求的脚本
控制器负责协调模型和视图
模型只负责处理数据
视图只负责显示数据