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 ss7.5的数据调用 (笔记)
Mar 08 PHP
PHP错误和异长常处理总结
Mar 06 PHP
php返回相对时间(如:20分钟前,3天前)的方法
Apr 14 PHP
php实现对象克隆的方法
Jun 20 PHP
浅谈PHP中foreach/in_array的使用
Nov 02 PHP
PHP常见数组函数用法小结
Mar 21 PHP
thinkphp3.x中cookie方法的用法分析
May 19 PHP
解决PHP 7编译安装错误:cannot stat ‘phar.phar’: No such file or directory
Feb 25 PHP
浅谈PHP的排列组合(如输入a,b,c 输出他们的全部组合)
Mar 14 PHP
php递归函数怎么用才有效
Feb 24 PHP
PHP单例模式应用示例【多次连接数据库只实例化一次】
Dec 18 PHP
详解PHP 7.4 中数组延展操作符语法知识点
Jul 19 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
风味层面去分析咖啡油脂
2021/03/03 咖啡文化
php 图像函数大举例(非原创)
2009/06/20 PHP
关于mysql字符集设置了character_set_client=binary 在gbk情况下会出现表描述是乱码的情况
2013/01/06 PHP
php将字符串随机分割成不同长度数组的方法
2015/06/01 PHP
PHP进行批量任务处理不超时的解决方法
2016/07/11 PHP
php 中self,this的区别和操作方法实例分析
2019/11/04 PHP
怎么让脚本或里面的函数在所有图片都载入完毕的时候执行
2006/10/17 Javascript
Jquery替换已存在于element上的event的方法
2010/03/09 Javascript
nodeType属性返回被选节点的节点类型介绍
2013/11/22 Javascript
jQuery scroll事件实现监控滚动条分页示例
2014/04/04 Javascript
详解为Angular.js内置$http服务添加拦截器的方法
2016/12/20 Javascript
Angular 2父子组件数据传递之局部变量获取子组件其他成员
2017/07/04 Javascript
用Vue写一个分页器的示例代码
2018/04/22 Javascript
Webpack devServer中的 proxy 实现跨域的解决
2018/06/15 Javascript
JavaScript实现选项卡效果的分析及步骤
2019/04/16 Javascript
vue2.0基于vue-cli+element-ui制作树形treeTable
2019/04/30 Javascript
深入理解Vue keep-alive及实践总结
2019/08/21 Javascript
vue3.0中使用postcss-pxtorem的具体方法
2019/11/20 Javascript
JavaScript实现联动菜单特效
2020/01/07 Javascript
浅谈Vue 函数式组件的使用技巧
2020/06/16 Javascript
python中使用sys模板和logging模块获取行号和函数名的方法
2014/04/15 Python
python中__slots__用法实例
2015/06/04 Python
Python入门_浅谈字符串的分片与索引、字符串的方法
2017/05/16 Python
Python标准库sched模块使用指南
2017/07/06 Python
Python 模拟生成动态产生验证码图片的方法
2020/02/01 Python
Python3操作MongoDB增册改查等方法详解
2020/02/10 Python
python使用opencv resize图像不进行插值的操作
2020/07/05 Python
python 第三方库paramiko的常用方式
2021/02/20 Python
CSS3中引入多种自定义字体font-face
2020/06/12 HTML / CSS
使用iframe+postMessage实现页面跨域通信的示例代码
2020/01/14 HTML / CSS
人力资源专员岗位职责
2014/01/30 职场文书
教师对学生的寄语
2014/04/03 职场文书
运动会加油口号
2014/06/07 职场文书
医学专业毕业生推荐信
2014/07/12 职场文书
面试通知邮件
2015/04/20 职场文书
入党介绍人考察意见
2015/06/01 职场文书