《L02》第九章学习笔记之——自定义命令行
命令行
生成命令类的命令行:
php artisan make:command CalculateActiveUser --command=larabbs:calculate-active-user
参数 –command 是指定 Artisan 调用的命令,一般情况下,我们推荐为命令加上命名空间,例如larabbs:
。
修改命令类:
打开 app/Console/Commands/CalculateActiveUser.php 文件并对该类进行修改。
修改的内容也不多,只需修改 description 属性和 handle 方法。
description 属性用于描述该命令。
而 handle 方法用于定义业务逻辑,这个例子的业务逻辑是计算并缓存活跃用户。
最终代码修改如下:
<?php
namespace App\Console\Commands;
use Illuminate\Console\Command;
use App\Models\User;
class CalculateActiveUser extends Command
{
// 供我们调用命令
protected $signature = 'larabbs:calculate-active-user';
// 命令的描述
protected $description = '生成活跃用户';
// 最终执行的方法
public function handle(User $user)
{
// 在命令行打印一行信息
$this->info("开始计算...");
$user->calculateAndCacheActiveUsers();
$this->info("成功生成!");
}
}
参考资料:
1. 《文档》
2. 《L02》
本作品采用《CC 协议》,转载必须注明作者和本文链接