您好,欢迎来到六安矩阵网络一站式互联网营销服务平台!
咨询邮箱: service@matrixcn.com 咨询热线:13516498856

ci框架目录结构分析
点击次数 | 更新时间 | 2015-07-11 00:46:23
[摘要] myshop|-----system框架程序目录|-----core框架的核心程序|-----CodeIgniter.php引导性文件|-----Common.php加载基类库的公共函数|-----Controller.php基控制器类文件:CI_Controller|-----Model.php基模型类文件:CI_Model|-----...
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				入口文件
 

 

扩展目录结构:

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创建图形验证码的辅助函数
		|-----xxx_helper.php    自定义辅助函数
	|-----libraries			通用类库
		|-----Pagination.php	通用分页类库
		|-----Upload.php	通用文件上传类库
		|-----Image_lib.php	通用图像处理类库
		|-----Session.php	通用session类库
		|-----Xxx.php		自定义类库
	|-----language			语言包
	|-----database			数据库操作相关的程序
		|-----DB_active_rec.php 快捷操作类文件(ActiveRecord)
	|-----fonts			字库
	
|-----application			项目目录
	|-----core			项目的核心程序
		|-----MY_Controller.php	扩展核心基控制器类:CI_Controller
	|-----helpers			项目的辅助函数
		|-----MY_url_helper.php	扩展系统url相关的辅助函数,如:创建url的辅助函数
		|-----MY_captcha_helper.php扩展系统创建图形验证码的辅助函数
		|-----url_helper.php	覆盖系统url相关的辅助函数,如:创建url的辅助函数
		|-----captcha_helper.php覆盖系统创建图形验证码的辅助函数
		|-----xxx_helper.php	创建自己的辅助函数
	|-----libraries			通用类库
		|-----MY_Pagination.php	扩展系统通用分页类库
		|-----MY_Upload.php	扩展系统通用文件上传类库
		|-----MY_Image_lib.php	扩展系统通用图像处理类库
		|-----MY_Session.php	扩展系统通用session类库
		|-----Pagination.php	覆盖系统通用分页类库
		|-----Upload.php	覆盖系统通用文件上传类库
		|-----Image_lib.php	覆盖系统通用图像处理类库
		|-----Session.php	覆盖系统通用session类库
		|-----Xxx.php		创建自己的类库
	|-----language			语言包
	|-----config			项目相关的配置
		|-----config.php	项目相关的配置文件	
		|-----database.php	数据库相关的配置文件
		|-----autoload.php	设置自动加载类库的配置文件
		|-----constants.php	常量配置文件
		|-----routes.php	路由配置文件
	|-----controllers		控制器目录
		|-----admin		自定义目录,后台控制器文件可以划分到此目录中
			|-----welcome.php控制器文件,继承CI_Controller,也可以继承MY_Controller
			|-----common.php 自定义通用控制器文件,继承CI_Controller,也可以继承MY_Controller
		|-----home		自定义目录,前台控制器文件可以分化到此目录中
			|-----welcome.php控制器文件,继承CI_Controller,也可以继承MY_Controller
			|-----common.php 自定义通用控制器文件,继承CI_Controller,也可以继承MY_Controller
		|-----welcome.php	控制器文件,继承CI_Controller,也可以继承MY_Controller
	|-----models			模型目录
		|-----admin		自定义目录,后台模型文件可以划分到此目录中
			|-----welcome_model.php	模型文件,继承CI_Model
			|-----common_model.php	自定义通用模型文件,继承CI_Model
		|-----home		自定义目录,前台模型文件可以划分到此目录中
			|-----welcome_model.php	模型文件,继承CI_Model
			|-----common_model.php	自定义通用模型文件,继承CI_Model
		|-----welcome_model.php	模型文件,继承CI_Model
	|-----views			  视图目录
		|-----admin		  自定义目录,后台视图模板文件可以划分到此目录中
			|-----welcome.php 视图模板文件,后缀名可以是.php,也可以是.html等任意后缀
			|-----welcome.html视图模板文件,后缀名可以是.php,也可以是.html等任意后缀
			|-----welcome.tpl 视图模板文件,后缀名可以是.php,也可以是.html等任意后缀
		|-----home		  自定义目录,前台视图模板文件可以划分到此目录中
			|-----welcome.php 视图模板文件,后缀名可以是.php,也可以是.html等任意后缀
			|-----welcome.html视图模板文件,后缀名可以是.php,也可以是.html等任意后缀
			|-----welcome.tpl 视图模板文件,后缀名可以是.php,也可以是.html等任意后缀
		|-----welcome.php	视图模板文件,默认后缀名为.php,后缀名也可以是.html等任意后缀
		|-----welcome.html	视图模板文件,后缀名可以是.php,也可以是.html等任意后缀
		|-----welcome.tpl       视图模板文件,后缀名可以是.php,也可以是.html等任意后缀
	|-----cache			存放数据或模板的缓存文件
	|-----errors			错误提示模板
	|-----hooks			钩子,在不修改系统核心文件的基础上扩展系统功能
	|-----third_party		第三方库
	|-----logs			日志

|-----index.php				入口文件
|-----admin.php				自定义后台入口文件

 

CI目录结构

  CI主要组成部分为,application(应用文件夹)、system(系统文件夹)和index.php入口文件。
 
  应用文件夹中主要是存放控制器、模型和视图等,系统文件夹中主要是存放组成CI的核心文件的,index.php入口文件是一个单一入口文件,所谓单一文件是指在一个网站(应用程序)中,所有的请求都是指向的这么一个文件,由它负责接收并处理URL中的控制器和方法。换句话说, 它调用一个 '控制器', 然后返回一个'视图'。
 
application :
cache          第一次安装时为空,如果你打开缓存设置,这个目录存放缓存数据
config         存放配置文件,包含网站的基本配置信息
controllers    存放你项目的控制器目录
core           该目录可以扩展系统的核心文件
errors         包含出错信息页,你不必修改这个目录
hooks          首次安装时为空,用来存放你创建的钩子。钩子是 用来装载其它文件的控制方法
helpers        辅助函数,你可以对系统的辅助函数进行扩展
language       存放你本国语言的文件目录
libraries      类库,你可以创建自己的类库
logs           如果你设置打开了系统的错误日志,日志文件就默认保存在这个目录
models         存放你项目的模型目录
views          存放视图的模板目录
 
system :            
   core            存放系统核心文件
   database        CI框架的数据库类的类库文件
   fonts           没有在用户手册中介绍,存放水印图像使用的字体
   helpers         辅助函数,你可以对系统的辅助函数进行扩展
   language        存放英语的文件目录
   libraries       存放一些类库的目录,比如SESSION类、分页类、图像类等
 
  应用文件夹(application)中,最重要的文件夹是config,该文件夹内有两个需要关注的文件:config.php 和 database.php,其次是controllers、models和views文件夹,分别存储你网站中的控制器、模型和视图。
 
URL处理机制
假如URL网址为:http://yoursite/index.php/control/func/param1/param2/...
 
http://www.yoursite.com
定位你网站的基本URL
 
/index.php
定位CI路由器并读取URL的其它部分,分析后定们到相关网页
 
/control
CI将调用的控制器的名称(如果没有设置控制器名称,CI将调用你在config文件中设置的默认控制器)
 
/func
CI将调用的函数的名称,位于所调用的控制器内。(如果不存在该函数,默认调用的是index函数,除非你使用_remap)
 
/param1
CI把这个作为传递给函数的变量
 
如果还有/param2/...
CI把更多的参数作为变量传递给函数
 
所以上面网址可以理解为:
http://localhost/index.php/控制器名/方法名/方法的参数1/方法的参数2/...
上一篇:PHP:调试的时候没有显示任何错误信息
下一篇:Codeigniter教程 快速入门
通话
短信
留言
首页