laravel console - 自定义命令

发布时间: 2018-03-30 22:22:16 作者: 大象笔记

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

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

自动创建 console 命令类

php artisan make:command YourCommand

这时会看到目录

app/Console/Commands

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

console 命令类的几个必填项

在 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

我是一名山东烟台的开发者,联系作者