本书未发布
29. 目录结构
简介
在本节里,我们给大家介绍一下 ThinkPHP 生成目录结构以及 ThinkBBS 的目录结构。
ThinkPHP项目目录结构
ThinkPHP 默认创建的项目是多模块模式,以下是 ThinkPHP 为我们生成的 ThinkBBS 项目目录结构,其中带「*」标记文件或目录是因为框架版本的迭代而在官方文档的目录结构里没有列出的内容。有关目录结构更多介绍请阅读 官方项目目录结构说明。
. 项目根目录
├─application 应用目录
│ ├─index Index模块目录(项目默认模块)
│ │ └─controller 控制器目录
│ │ └─ index.php index控制器(模块默认控制器)
│ │
│ ├─command.php 命令行定义文件
│ ├─common.php 公共函数文件
│ ├─provider.php 服务提供者文件(用于定义批量绑定)
│ └─tags.php 应用行为扩展定义文件
│
├─config 应用配置目录
│ │
│ ├─app.php 应用配置
│ ├─cache.php 缓存配置
│ ├─console.php 控制台配置
│ ├─cookie.php Cookie配置
│ ├─database.php 数据库配置
│ ├─log.php 日志配置
│ ├─middleware.php *中间件配置
│ ├─session.php Session配置
│ ├─template.php 模板引擎配置
│ └─trace.php Trace配置
│
├─route 路由定义目录
│ └─route.php 路由定义
│
├─public WEB目录(对外访问目录)
│ ├─index.php 入口文件
│ ├─router.php 快速测试文件
│ ├─.htaccess 用于apache的重写
│ └─static *静态资源文件目录
│
├─thinkphp 框架系统目录
│ ├─lang 语言文件目录
│ ├─library 框架类库目录
│ │ ├─think Think类库包目录
│ │ └─traits 系统Trait目录
│ │
│ ├─tpl 系统模板目录
│ ├─base.php 基础定义文件
│ ├─convention.php 框架惯例配置文件
│ ├─helper.php 助手函数文件
│ └─logo.png 框架LOGO文件
│
├─extend 扩展类库目录
├─runtime 应用的运行时目录(可写,可定制)
├─vendor 第三方类库目录(Composer依赖库)
├─build.php 自动生成定义文件(参考)
├─composer.json composer 定义文件
├─LICENSE.txt 授权说明文件
├─README.md README 文件
├─think 命令行入口文件
ThinkBBS 目录结构
遵循 开发规范 , 在本教程里我们按多模块模式来开发 ThinkBBS。采用多模块模式开发时,我们会创建以下三个模块:
- 后台模块(admin)—— 主要实现后台管理页面,通常只有控制器和视图模板代码;
- 前台模块(index)—— 主要实现前台用户页面,通常也只有控制器和视图模板代码;
- 共用模块(common)—— 主要包含前后台模块共用的数据模型(model)、验证器(validate)和观察者(observer)等内容代码。
以下是本项目各模块结构示意:
大家不用现在按下面结构创建各模块目录和文件,在接下来开发过程我们会在用到时再创建相应目录和文件。
. ThinkBBS 项目根目录
├─application 应用目录
│ ├─admin 后台模块目录(项目默认模块)
│ │ ├─controller 后台控制器目录
│ │ │ ├─ Topic.php 后台话题管理控制器类
│ │ │ └─ ... 后台其它控制器类
│ │ │
│ │ └─view 后台模块视图模板目录
│ │ ├─ topic 后台话题视图模板目录
│ │ └─ ... 后台其它视图模板目录
│ │
│ ├─common 公共模块
│ │ ├─exception 异常目录
│ │ │
│ │ ├─model 数据模型目录
│ │ │ ├─ Topic.php 话题数据模型类
│ │ │ └─ ... 其它数据模型类
│ │ │
│ │ ├─observer 观察者目录
│ │ │ ├─ Topic.php 话题观察者类
│ │ │ └─ ... 其它观察者类
│ │ │
│ │ └─validate 验证器目录
│ │ ├─ Topic 话题验证器类
│ │ └─ ... 其它验证器类
│ │
│ ├─index 前台模块目录(项目默认模块)
│ │ ├─controller 前台控制器目录
│ │ │ ├─ topic.php 前台话题管理控制器类
│ │ │ └─ ... 前台其它控制器前
│ │ │
│ │ └─view 前台模块视图模板目录
│ │ ├─ topic 前台话题视图模板目录
│ │ └─ ... 前台其它视图模板目录
推荐文章: