thinkphp5如何生成多个模块?thinkphp5如何生成多入口文件?
我们在开发中,可能会涉及到前台和后台两个模块。但thinkphp下载后只有一个index模块。
我们现在新建一个admin的模块
第一步:在跟目录创建一个admin.php文件,代码如下
define('APP_PATH', __DIR__ . '/application/');
// 加载框架引导文件
require __DIR__ . '/thinkphp/start.php';
$build = include './build.php';
// 运行自动生成
\think\Build::run($build);
第二步:在根目录找到build.php文件,添加admin模块的文件目录
<?php
return [
// 生成应用公共文件
'__file__' => ['common.php', 'config.php', 'database.php'],
// 定义demo模块的自动生成 (按照实际定义的文件名生成)
'admin' => [
'__file__' => ['common.php'],
'__dir__' => ['behavior', 'controller', 'model', 'view'],
'controller' => ['Index', 'Test',],
'model' => ['User', 'UserType'],
'view' => ['index/index'],
],
// 其他更多的模块定义
];
第三步:访问根目录下admin.php文件(http://my.thinkphp.com/admin.php),这个时候我们会看到,在application目录下生成了一个admin的文件
生成的控制器文件是不是也对应了build文件里的controller
文件我们已经生成成功,那现在该如何绑定模块呢?
第四步:我们先修改admin/controller/index里的index方法,然后在根目录admin.php里添加define(‘BIND_MODULE’,‘admin’);
我们来访问下入口admin.php文件,如果打印显示的是“我是admin模块“,说明绑定成功