Laravel创建定时任务

这篇具有很好参考价值的文章主要介绍了Laravel创建定时任务。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        创建一个任务,创建成功后会在App/Console/Commands中生成一个以Test命名的文件,我们可以在这里面写我们的任务指令。

php artisan make:command Test

        运行这个定时任务 run 是运行一次,我们可以用来测试是否成功,work是一直运行,每分钟执行一次,当执行到我们设置的时间就会自动执行。

php artisan schedule:run

php artisan schedule:work

/**
     * The name and signature of the console command.
     *
     * @var string
     * 给我们的任务取一个名称
     */
    protected $signature = 'Test';
 
    /**
     * 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 int
     * 在这里进行我们的逻辑编写
     */
    public function handle()
    {
        return 0;
    }

        我们在将逻辑完成之后,就需要在App/Console中的Kernel.php文件当中去设置我们的定时任务的时间段。

/**
     * Define the application's command schedule.
     *
     * @param \Illuminate\Console\Scheduling\Schedule $schedule
     * @return void
     * @name 为我们定义的任务名称 只需要操作这里就OK
     */
    protected function schedule(Schedule $schedule)
    {
        //我们可以根据需求去调整我们的定时任务的运行时间,我会在最下面将时间列出来
        $schedule->command('name')->everyThirtyMinutes();
    }
 
    /**
     * Register the commands for the application.
     *
     * @return void
     */
    protected function commands()
    {
        $this->load(__DIR__ . '/Commands');
 
        require base_path('routes/console.php');
    }

         成功实例

Laravel创建定时任务

Laravel创建定时任务

Laravel创建定时任务 

 

 

 定时任务的时间设置
        这是定时任务的时间调度设置。

方法                           描述
->cron('* * * * *');    自定义 Cron 计划执行任务
->everyMinute();    每分钟执行一次任务
->everyTwoMinutes();    每两分钟执行一次任务
->everyThreeMinutes();    每三分钟执行一次任务
->everyFourMinutes();    每四分钟执行一次任务
->everyFiveMinutes();    每五分钟执行一次任务
->everyTenMinutes();    每十分钟执行一次任务
->everyFifteenMinutes();    每十五分钟执行一次任务
->everyThirtyMinutes();    每三十分钟执行一次任务
->hourly();    每小时执行一次任务
->hourlyAt(17);    每小时第 17 分钟执行一次任务
->everyTwoHours();    每两小时执行一次任务
->everyThreeHours();    每三小时执行一次任务
->everyFourHours();    每四小时执行一次任务
->everySixHours();    每六小时执行一次任务
->daily();    每天 0 点执行一次任务
->dailyAt('13:00');    每天 13:00 执行一次任务
->twiceDaily(1, 13);    每天 01:00 和 13:00 各执行一次任务
->weekly();    每周日 00:00 执行一次任务
->weeklyOn(1, '8:00');    每周一的 08:00 执行一次任务
->monthly();    每月第一天 00:00 执行一次任务
->monthlyOn(4, '15:00');    每月 4 号的 15:00 执行一次任务
->lastDayOfMonth('15:00');    每月最后一天 15:00 执行一次任务
->quarterly();    每季度第一天 00:00 执行一次任务
->yearly();    每年第一天 00:00 执行一次任务
->timezone('America/New_York');    设置时区


        下面是定时任务的一些约束。

方法                    描述
->weekdays();    限制任务在工作日执行
->weekends();    限制任务在周末执行
->sundays();    限制任务在周日执行
->mondays();    限制任务在周一执行
->tuesdays();    限制任务在周二执行
->wednesdays();    限制任务在周三执行
->thursdays();    限制任务在周四执行
->fridays();    限制任务在周五执行
->saturdays();    限制任务在周六执行
->days(array|mixed);    限制任务在每周的指定日期执行
->between($start, $end);    限制任务在 $start 和 $end 区间执行
->when(Closure);    限制任务在闭包返回为真时执行
->environments($env);    限制任务在特定环境中执行
总结
1.先创建一个定时任务,并且命名。

2.在创建的定时任务中书写我们的逻辑信息

3.在Kernel文件中设置定时任务的运行时间

4.运行定时任务,进行测试

我们能够在laravel8中文文档中的任务调度去找到相关的信息 Laravel8 任务调度文章来源地址https://www.toymoban.com/news/detail-441345.html

到了这里,关于Laravel创建定时任务的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包