laravel console - 自定义命令

更新日期: 2019-01-17 阅读次数: 5726 分类: Laravel

在改造一个支付流程,新的流程加入了一个新的数据表字段,但是这个新的字段需要通过计算来填充,所以为了兼容历史数据,必须将已有的数据行重新计算一遍该字段。

这时使用 laravel console 命令就非常方便,因为可以共用 .env 中的数据库连接配置,以及定义好的 model。

自动创建 console 命令类

php artisan make:command YourCommand

这时会看到目录

app/Console/Commands

下多了一个新的命令类,在 handle 中写计算逻辑即可。

console 命令类的几个必填项

  • signature 命令名及参数指定
  • description 命令描述
  • handle 即逻辑部分

在 console 中输出日志

$this->info('Display this on the screen');

获取命令行参数

示例

protected $signature = 'order:sub {order_id}';

public function handle()
{
    $order_id = $this->argument('order_id');
     OrderController::pseudo_sub_orders($order_id);
}

参考

https://laravel.com/docs/5.6/artisan#introduction

爱评论不评论

近期节日

2020年04月07日 世界卫生日
2020年04月11日 世界帕金森病日
2020年04月19日 谷雨
2020年04月21日 复活节
2020年04月22日 世界地球日
2020年04月23日 世界读书日
2020年04月26日 知识产权日
2020年04月30日 佛诞
2020年04月30日 全国交通安全反思日
2020年05月01日 国际劳动节
2020年05月04日 五四青年节
2020年05月05日 立夏
查看更多节日