CI(CodeIgniter)框架介绍与目录结构

2015-7-18 15:48| 发布者: CODETC| 查看: 2450| 评论: 0

CodeIgniter 是一个为用 PHP 编写网络应用程序的人员提供的工具包。它的目标是实现让你比从零开始编写代码更快速地开发项目,为此,CI 提供了一套丰富的类库来满足通常的任务需求,并且提供了一个简单的接口和逻辑结构来调用这些库。CodeIgniter 可以将需要完成的任务代码量最小化,这样你就可以把更多的精力放到项目的开发上了。


CodeIgniter 是一个应用程序框架
1、免费:CodeIgniter是经过Apache/BSD-style开源许可授权的,只要你愿意就可以使用它。
2、简单:CodeIgniter是真正的轻量级,核心系统只需要一些非常小的库。
3、MVC:CodeIgniter使用了MVC的方法,可以更好的使表现层和逻辑层分离。


--应用程序流程图

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 也可以和你现有的脚本合并使用,或者允许自行开发此系统的核心库,可以使你以最适合你的方式工作。


CodeIgniter 目录结构
myshop
|-----system				框架程序目录
	|-----core			框架的核心程序
		|-----CodeIgniter.php	引导性文件
		|-----Common.php	加载基类库的公共函数
		|-----Controller.php	基控制器类文件:CI_Controller
		|-----Model.php		基模型类文件:CI_Model
		|-----Config.php	配置类文件:CI_Config
		|-----Input.php		输入类文件:CI_Input
		|-----Output.php	输出类文件:CI_Output
		|-----URL.php		URL类文件:CI_URl
		|-----Router.php	路由类文件:CI_Router
		|-----Loader.php	加载类文件:CI_Loader
	|-----helpers			辅助函数
		|-----url_helper.php	url相关的辅助函数,如:创建url的辅助函数
		|-----captcha_helper.php创建图形验证码的辅助函数
	|-----libraries			通用类库
		|-----Pagination.php	通用分页类库
		|-----Upload.php	通用文件上传类库
		|-----Image_lib.php	通用图像处理类库
		|-----Session.php	通用session类库
	|-----language			语言包
	|-----database			数据库操作相关的程序
		|-----DB_active_rec.php 快捷操作类文件(ActiveRecord)
	|-----fonts			字库
	
|-----application			项目目录
	|-----core			项目的核心程序
	|-----helpers			项目的辅助函数
	|-----libraries			通用类库
	|-----language			语言包
	|-----config			项目相关的配置
		|-----config.php	项目相关的配置文件	
		|-----database.php	数据库相关的配置文件
		|-----autoload.php	设置自动加载类库的配置文件
		|-----constants.php	常量配置文件
		|-----routes.php	路由配置文件
	|-----controllers		控制器目录
		|-----welcome.php	控制器文件,继承CI_Controller
	|-----models			模型目录
		|-----welcome_model.php	模型文件,继承CI_Model
	|-----views			视图目录
		|-----welcome.php	视图模板文件,默认后缀名为.php
	|-----cache			存放数据或模板的缓存文件
	|-----errors			错误提示模板
	|-----hooks			钩子,在不修改系统核心文件的基础上扩展系统功能
	|-----third_party		第三方库
	|-----logs			日志

|-----index.php				入口文件
文章来源 CODETC,欢迎分享,转载请注明地址: http://www.codetc.com/article-221-1.html

最新评论

 作为游客发表评论,请输入您的昵称

返回顶部