Laravel中任务调度console使用方法小结

时间:2021-12-04 01:17:00

适用场景:分析数据(日志)

?
1
php artisan make:console 你的命令类名

示例:

?
1
php artisan make:console Check

在\app\Console\Commands目录下已生成一个Check.php文件

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?php
 
namespace App\Console\Commands;
 
use Illuminate\Console\Command;
 
class Check extends Command
{
  /**
   * The name and signature of the console command.
   *
   * @var string
   */
  protected $signature = 'command:name';
 
  /**
   * The console command description.
   *
   * @var string
   */
  protected $description = 'Command description';
 
  /**
   * Create a new command instance.
   *
   * @return void
   */
  public function __construct()
  {
    parent::__construct();
  }
 
  /**
   * Execute the console command.
   *
   * @return mixed
   */
  public function handle()
  {
    //
  }
}

你可以把$signature改为你要的命令名称

?
1
protected $signature = 'check';

此时还不能在控制台中调用,需要在Kernel.php中注册。

?
1
2
3
protected $commands = [
    'App\Console\Commands\Check'
];

你已经可以在控制台中使用这个命令了

?
1
php artisan check

点评:似乎也没啥用,因为php本身也可以不用Laravel框架来使用CLI命令行。