在改造一个支付流程,新的流程加入了一个新的数据表字段,但是这个新的字段需要通过计算来填充,所以为了兼容历史数据,必须将已有的数据行重新计算一遍该字段。
这时使用 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
微信关注我哦 👍
我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊, 查看更多联系方式