ThinkPHP多应用模式通过安装topthink/think-multi-app扩展实现,支持在app目录下创建index、admin等独立应用,每个应用拥有单独的控制器、路由与配置文件,URL首段路径对应应用名,默认应用可在config/app.php中设置为index,并可通过路由重定向隐藏入口路径,各应用可独立配置数据库等参数,公共逻辑建议提取至service层或通过事件通信,适用于中大型项目结构化拆分。

ThinkPHP 多应用模式允许你在同一个项目中运行多个独立的应用,比如前台、后台、API 接口等,每个应用有自己独立的控制器、路由和配置。从 ThinkPHP 6 开始,官方提供了多应用扩展来支持该功能。
ThinkPHP 6 的核心包默认不包含多应用功能,需要单独安装多应用扩展:
composer require topthink/think-multi-app安装完成后,系统会自动注册多应用中间件,即可开启多应用支持。
应用默认位于 app/ 目录下,每个子目录代表一个独立应用。例如:
立即学习“PHP免费学习笔记(深入)”;
你可以通过命令行快速创建应用:
php think app:indexphp think app:admin这会自动生成对应目录结构(包括 controller、config 等)。
默认情况下,URL 中的第一段路径会被识别为应用名。例如:
如果 URL 没有指定应用,默认会访问配置中定义的默认应用。
多应用的全局配置在 config/app.php 中,常见配置项包括:
'default_app' => 'index', // 默认应用'app_express' => true, // 是否启用应用快速访问(通过子域名或路径自动解析)你也可以在这里设置应用列表或关闭某些应用。
每个应用可以有自己的配置文件,放在对应应用目录的 config 目录下,例如:
这样前后台可使用不同的数据库连接。
路由也独立管理:每个应用的路由文件位于 app/应用名/route/app.php。
多应用之间是隔离的,不能直接互相调用控制器。如需共享逻辑,建议将公共方法提取到:
开发时可通过 URL 明确指定应用路径。生产环境建议配合 Nginx 或 Apache 设置入口指向 public 目录,确保路径正确解析。
若想隐藏应用名(如让首页直接访问 index 应用),可设置 default_app 并使用路由重定向:
Route::get('/', function () { return redirect('/index'); });基本上就这些。多应用模式让项目结构更清晰,适合中大型项目拆分。只要按规范组织目录,配置好路由和默认应用,就能高效使用。
以上就是thinkphp多应用模式如何配置和使用的详细内容,更多请关注php中文网其它相关文章!
 
                        
                        PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
 
                Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号