一般的thinkphp框架一般都是单模块开发的,但有时候我们可能需要进行多模块开发,例如添加个后台管理的模块。这次给人讲课,在Tp多模块开发的配置上翻车,感觉很有必要总结下,话不多说,直接上干货。
总结下来 有两种方案可解决
- 手动配置:
- 在config.php文件中开启多模块开发模
2.在index模块的同级目录上手动添加admin模块(新建admin文件夹)
3.添加admin.php入口文件 copy在public文件夹下的index.php文件下的内容
从上面我们可以对比index.php 和 admin.php 发现在admin.php中define('APP_PATH', __DIR__ . '/../application/admin/');多了admin 其实在index.php中其实也存在,只是TP会自动省略index的路由信息。
- 官方配置(感觉高级)
- 在config.php文件中开启多模块开发模
- 在build.php 中自定义需要添加的模块demo
3.在项目的目录下执行:php think build --config build.php 【注意:命令如果无法执行 看看你的PHP环境变量是否配置】
4.入口文件配置copy index.php代码 强调必须要添加模块绑定的demo:define('BIND_MODULE','api/index'); //绑定到api模块的index控制器
<?php
// +----------------------------------------------------------------------
// | ThinkPHP [ WE CAN DO IT JUST THINK ]
// +----------------------------------------------------------------------
// | Copyright (c) 2006-2016 http://thinkphp.cn All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
// | Author: liu21st <liu21st@gmail.com>
// +---------------------------------------------------------------------- // [ 应用入口文件 ] // 定义应用目录
define('APP_PATH', __DIR__ . '/../application/');
// 绑定到api模块的index控制器
define('BIND_MODULE','api/index');
// 加载框架引导文件
require __DIR__ . '/../thinkphp/start.php';
- 配置成功截图