CI(CodeIgniter)框架介绍


Posted in PHP onJune 09, 2014

CodeIgniter 是一个应用程序框架

1、免费:CodeIgniter是经过Apache/BSD-style开源许可授权的,只要你愿意就可以使用它。

2、简单:CodeIgniter是真正的轻量级,核心系统只需要一些非常小的库。

3、MVC:CodeIgniter使用了MVC的方法,可以更好的使表现层和逻辑层分离。

--应用程序流程图

CI(CodeIgniter)框架介绍

index.php 作为前端控制器,初始化运行 CodeIgniter 所需要的基本资源。 Router 检查 HTTP 请求,以确定谁来处理请求。 如果缓存(Cache)文件存在,它将绕过通常的系统执行顺序,被直接发送给浏览器。 安全(Security)。应用程序控制器(Application Controller)装载之前,HTTP 请求和任何用户提交的数据将被过滤。 控制器(Controller)装载模型、核心库、辅助函数,以及任何处理特定请求所需的其它资源。 最终视图(View)渲染发送到 Web 浏览器中的内容。如果开启缓存(Caching),视图首先被缓存,所以将可用于以后的请求。 模型-视图-控制器

CodeIgniter 是基于模型-视图-控制器这一设计模式的。MVC 是一种将应用程序的逻辑层和表现层进行分离的方法。在实践中,由于表现层从 PHP 脚本中分离了出来,所以它允许你的网页中只包含很少的脚本。

模型 (Model) 代表你的数据结构。通常来说,你的模型类将包含取出、插入、更新你的数据库资料这些功能。
视图 (View) 是展示给用户的信息。一个视图通常是一个网页,但是在 CodeIgniter 中,一个视图也可以是一个页面片段,如页头、页尾。它还可以是一个 RSS 页面,或任何其它类型的“页面”。
控制器 (Controller) 是模型、视图以及其他任何处理 HTTP 请求所必须的资源之间的中介,并生成网页。

CodeIgniter 在 MVC 使用上非常宽松,因此模型不是必需的。如果你不需要使用这种分离方式,或是发觉维护模型比你想象中的复杂很多,你可以不用理会它们而创建自己的应用程序, 并最少化使用控制器和视图。CodeIgniter 也可以和你现有的脚本合并使用,或者允许自行开发此系统的核心库,可以使你以最适合你的方式工作。

PHP 相关文章推荐
关于php连接mssql:pdo odbc sql server
Jul 20 PHP
php后台多用户权限组思路与实现程序代码分享
Feb 13 PHP
工厂模式在Zend Framework中应用介绍
Jul 10 PHP
鸡肋的PHP单例模式应用详解
Jun 03 PHP
微信公众平台天气预报功能开发
Jul 06 PHP
php魔术变量用法实例详解
Nov 13 PHP
php多线程实现方法及用法实例详解
Oct 26 PHP
编写PHP脚本使WordPress的主题支持Widget侧边栏
Dec 14 PHP
微信红包随机生成算法php版
Jul 21 PHP
PHP实现四种基础排序算法的运行时间比较(推荐)
Aug 11 PHP
PHP+Oracle本地开发环境搭建方法详解
Apr 01 PHP
laravel实现图片上传预览,及编辑时可更换图片,并实时变化的例子
Nov 14 PHP
CI框架中集成CKEditor编辑器的教程
Jun 09 #PHP
PHP小教程之实现链表
Jun 09 #PHP
浅谈Eclipse PDT调试PHP程序
Jun 09 #PHP
教你如何在CI框架中使用 .htaccess 隐藏url中index.php
Jun 09 #PHP
PHP、Nginx、Apache中禁止网页被iframe引用的方法
Oct 01 #PHP
PHP遍历目录并返回统计目录大小
Jun 09 #PHP
php中替换字符串中的空格为逗号','的方法
Jun 09 #PHP
You might like
PHP中substr()与explode()函数用法分析
2014/11/24 PHP
php自动更新版权信息显示的方法
2015/06/19 PHP
PHP的Yii框架的常用日志操作总结
2015/12/08 PHP
Thinkphp5.0框架的Db操作实例分析【连接、增删改查、链式操作等】
2019/10/11 PHP
js判断选择时间不能小于当前时间的示例代码
2013/09/24 Javascript
js完美解决IE6不支持position:fixed的bug
2015/04/24 Javascript
jQuery实现固定在网页顶部的菜单效果代码
2015/09/02 Javascript
javascript点击按钮实现隐藏显示切换效果
2016/02/03 Javascript
Jquery组件easyUi实现表单验证示例
2016/08/23 Javascript
Jquery和Js获得元素标签名称的方法总结
2016/10/08 Javascript
详解angular element()方法使用
2017/04/08 Javascript
js实现股票实时刷新数据案例
2017/05/14 Javascript
JavaScript判断浏览器和hack滚动条的写法
2017/07/23 Javascript
vue2.0在table中实现全选和反选的示例代码
2017/11/04 Javascript
vue2.0实现的tab标签切换效果(内容可自定义)示例
2019/02/11 Javascript
vue实现百度搜索功能
2020/12/28 Javascript
Openlayers+EasyUI Tree动态实现图层控制
2020/09/28 Javascript
python uuid模块使用实例
2015/04/08 Python
python安装PIL模块时Unable to find vcvarsall.bat错误的解决方法
2016/09/19 Python
详解 Python 读写XML文件的实例
2017/08/02 Python
python框架flask表单实现详解
2019/11/04 Python
pytorch中的自定义数据处理详解
2020/01/06 Python
python中判断文件结束符的具体方法
2020/08/04 Python
python 读取yaml文件的两种方法(在unittest中使用)
2020/12/01 Python
可自定义箭头样式的CSS3气泡提示框
2016/03/16 HTML / CSS
HTML5在IE10、火狐下中文乱码问题的解决方法
2013/11/18 HTML / CSS
AmazeUI 评论列表的实现示例
2020/08/13 HTML / CSS
日本最大的眼镜购物网站:Oh My Glasses
2016/11/13 全球购物
戴尔马来西亚官网:Dell Malaysia
2020/05/02 全球购物
.TTL是什么?有什么用处,通常那些工具会用到它?(ping? traceroute? ifconfig? netstat?)
2016/05/09 面试题
教师业务学习制度
2014/01/25 职场文书
乡下人家教学反思
2014/02/01 职场文书
技术合作协议书范本
2014/04/18 职场文书
科学发展观演讲稿
2014/09/11 职场文书
2014年党员学习“三严三实”思想汇报
2014/09/15 职场文书
用Python远程登陆服务器的步骤
2021/04/16 Python