目前在自学php,记录下自己的学习过程。
thinkphp 5.0自动生成功能模块及模块中目录文件有两种方法:
第一种方案:
- 步骤一:在"build.php"文件中的ruturn方法中添加需要自动生成的功能模块。
return [
// 生成应用公共文件
'__file__' => ['common.php', 'config.php', 'database.php'],
'__dir__' => ['runtime/cache', 'runtime/log', 'runtime/temp', 'runtime/template'],
// 定义demo模块的自动生成 (按照实际定义的文件名生成)
'demo' => [
//文件
'__file__' => ['common.php'],
//文件夹
'__dir__' => ['behavior', 'controller', 'model', 'view'],
//每个文件夹中的类文件
'controller' => ['Index', 'Test', 'UserType'],
'model' => ['User', 'UserType'],
'view' => ['index/index'],
],
// 其他更多的模块定义
];
- 步骤二:在"public/index.php"中调用"\think\Build"类的方法自动生成上面定义好的模块。
// [ 应用入口文件 ]
// 定义应用目录
define('APP_PATH', __DIR__ . '/../application/');
// 加载框架引导文件
require __DIR__ . '/../thinkphp/start.php';
//自动生成定义的模块
$build = include APP_PATH.'../build.php';
\think\Build::run($build);
-
步骤三:
运行public中的index.php,成功之后生成的模块在application中。运行之后生成的功能模块如下图所示:
第二种方案:
第二种方案不依赖自动生成文件(即“build.php”定义的模块),直接使用默认的目录生成模块。在"public/index.php"中输入如下代码:
\think\Build::module('Person');
即可自动生成Person模块。如下图所示:
总结
两种方法相比而言,第一种方法较为灵活,可以自己来定义需要生成的功能模块和类文件。而第二种方法默认生成MVC模块,common.php,config.php,及controller中的index.php。