THINK5多模块-多应用的误区

来源:互联网 发布:it项目经理成长手记 编辑:程序博客网 时间:2024/06/08 14:14
thinkphp5的目录
project 应用部署目录
├─application 应用目录(可设置)
│ ├─common 公共模块目录(可更改)
├─index 模块目录(可更改)
│ │ ├─config.php 模块配置文件
│ │ ├─common.php 模块函数文件
│ │ ├─controller 控制器目录
│ │ ├─model 模型目录
│ │ ├─view 视图目录
│ │ └─ ... 更多类库目录
│ ├─command.php 命令行工具配置文件
│ ├─common.php 应用公共(函数)文件
│ ├─config.php 应用(公共)配置文件
│ ├─database.php 数据库配置文件
│ ├─tags.php 应用行为扩展定义文件
│ └─route.php 路由配置文件
├─extend 扩展类库目录(可定义)
├─public WEB 部署目录(对外访问目录)
│ ├─static 静态资源存放目录(css,js,image)
│ ├─index.php 应用入口文件
│ ├─router.php 快速测试文件
│ └─.htaccess 用于 apache 的重写
├─runtime 应用的运行时目录(可写,可设置)
├─vendor 第三方类库目录(Composer)
├─thinkphp 框架系统目录
│ ├─lang 语言包目录
│ ├─library 框架核心类库目录
│ │ ├─think Think 类库包目录
│ │ └─traits 系统 Traits 目录
│ ├─tpl 系统模板目录
│ ├─.htaccess 用于 apache 的重写
│ ├─.travis.yml CI 定义文件
│ ├─base.php 基础定义文件
│ ├─composer.json composer 定义文件
│ ├─console.php 控制台入口文件
│ ├─convention.php 惯例配置文件
│ ├─helper.php 助手函数文件(可选)
│ ├─LICENSE.txt 授权说明文件
│ ├─phpunit.xml 单元测试配置文件
│ ├─README.md README 文件
│ └─start.php 框架引导文件
├─build.php 自动生成定义文件(参考)
├─composer.json composer 定义文件
├─LICENSE.txt 授权说明文件
├─README.md README 文件
├─think 命令行入口文件

其中,多模块是指在application文件目录下,存在比如index、resume、people等模块就叫做多模块。thinkphp5和thinkphp3相同,都是通过单一入口模式,其中thinkphp5默认的url规则是
>[info] #### http://server/module/controller/action/param/value/…
即根据路由参数区分多模块。

多应用,则是在根目录下存在多个application目录,对应不同的入口文件,例如:
index.php
// 定义应用目录
define('APP_PATH', __DIR__ . '/application/');
// 加载框架引导文件
require __DIR__ . '/thinkphp/start.php';


adming.php
// 定义应用目录
define('APP_PATH', __DIR__ . '/admin/application/');
// 加载框架引导文件
require __DIR__ . '/thinkphp/start.php';

与多模块不同,只需要输入不同的入口文件(或输入admin进入admin目录下的index.php)即可。
├─admin
│ ├─application
│ │ ├─admin
│ │ │ └─controller
│ │ └─extra

├─application
│ ├─extra
│ └─index
│ └─controller

以上是我这个新手的理解,新手犯错太多。