主页

laravel任务调度在App\Console\Kernel类的 schedule 方法中定义所有的调度任务,以Artisan命令调度为例:
1、在schedule添加调度命令及时间

protected function schedule(Schedule $schedule)
{
        // $schedule->command('inspire')
        //          ->hourly();
        $schedule->command("my:test")->everyMinute();//每分钟执行
}

2、创建调度文件,该文件存储于App\Console\Commands目录下:

php artisan make:command MyTest

3、修改调度,定义任务调度名称和描述

protected $signature = 'my:test';
protected $description = 'This is my test';

    public function handle()
    {
        //自定义任务
        dump("hello world") ;
    }

4、执行测试,输出"hello world"

php artisan my:test

注意,如果你不知道如何向服务器添加 cron 配置项,请考虑使用 Laravel Forge 之类的服务来为你管理 cron 配置项:

* * * * * cd /你的项目路径 && php artisan schedule:run >> /dev/null 2>&1

常用时间说明
->everyMinute(); 每分钟执行一次任务
->hourly(); 每小时执行一次任务
->daily(); 每天 00:00 执行一次任务
->dailyAt('13:00'); 每天 13:00 执行一次任务

更多调度请参考文档:https://learnku.com/docs/laravel/9.x/scheduling/12238#105d37

版权属于:三分快乐,七纷幸福
作品采用:本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。
0
查看目录

目录

来自 《Laravel 任务调度使用说明》
评论

三分快乐,七纷幸福
99 文章数
7 评论量
11 分类数
102 页面数
已在风雨中度过 2年199天23小时48分