TP6.0 自定义命令创建类文件

一、修改框架核心扩展包
1. 新增指令配置项
2. 创建逻辑层类文件模板
3. 创建 Logic.php 文件
4. 执行命令, 创建逻辑层类文件
二、不用修改框架源码 【推荐】
1. 创建一个自定义命令类文件 (以逻辑层类文件为例)
2. 复制创建模型类的命令定义文件内容
3. 拷贝命令行生成模型类的模板
4. 将自定义命令添加到指令配置文件 config\console.php
5. 执行自定义命令, 创建逻辑层类文件

一、修改框架核心扩展包

1. 新增指令配置项


打开文件

 
  1. vendor\topthink\framework\src\think\Console.php

在 类属性 defaultCommands 中添加以下内容

 
  1. 'make:logic' => \think\console\command\make\Logic::class,

2. 创建逻辑层类文件模板


创建以下文件的一个副本

 
  1. vendor\topthink\framework\src\think\console\command\make\stubs\model.stub

将副本重命名为 logic.stub, 文件内容修改如下

 
  1. <?php
  2. declare (strict_types = 1);
  3. namespace {%namespace%};
  4. class {%className%}
  5. {
  6. }

3. 创建 Logic.php 文件


创建以下文件的一个副本

 
  1. vendor\topthink\framework\src\think\console\command\make\Model.php

将副本重命名为 Logic.php, 修改内容如下图

 
  1. vendor\topthink\framework\src\think\console\command\make\Logic.php

4. 执行命令, 创建逻辑层类文件


执行命令

 
  1. php think make:logic common@User

生成逻辑层类文件

 
  1. Logic:app\common\logic\User created successfully.

二、不用修改框架源码 【推荐】

1. 创建一个自定义命令类文件 (以逻辑层类文件为例)


生成 app\command\make\Logic.php 文件

 
  1. php think make:command make/Logic

2. 复制创建模型类的命令定义文件内容


复制以下文件内容, 粘贴到 app\command\make\Logic.php 文件中

 
  1. vendor\topthink\framework\src\think\console\command\make\Model.php

修改内容如下图

3. 拷贝命令行生成模型类的模板


拷贝命令行生成模型类的模板, 粘贴到 app\command\make\stubs\logic.stub

 
  1. vendor\topthink\framework\src\think\console\command\make\stubs\model.stub

文件内容如下

 
  1. <?php
  2. declare (strict_types = 1);
  3. namespace {%namespace%};
  4. class {%className%}
  5. {
  6. /**
  7. * 逻辑层静态方法
  8. */
  9. public static function demo()
  10. {
  11. }
  12. }

4. 将自定义命令添加到指令配置文件 config\console.php


 
  1. return [
  2. // 指令定义
  3. 'commands' => [
  4. 'make:logic' => app\command\make\Logic::class,
  5. ],
  6. ];

5. 执行自定义命令, 创建逻辑层类文件

 
  1. php think make:logic api@User
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值