当前位置: 首页 > news >正文

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');}

         成功实例

 

 

 

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

方法                           描述
->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 任务调度

http://www.lryc.cn/news/7355.html

相关文章:

  • SaveInstanceState
  • Fluent Python 笔记 第 16 章 协程
  • 山东科技大学校历 代码分析 获得以前学期学年的老版校历
  • 第五章.与学习相关技巧—权重初始值(随机初始值,Xavier初始值,He初始值)
  • Linux进程间通信(管道)
  • 写一个基于node.js的api后台管理系统(三)
  • 【23种设计模式】行为型模式详细介绍(上)
  • PID控制算法进阶
  • 嵌入式工程师有什么值得一看的网站和书籍吗?
  • 操作系统的四个特征
  • Django框架之模型shell工具和查看MySQL数据库日志
  • 电脑录屏怎样不录到外界声音?调整这一个开关,即可实现
  • 无需登录复制网站文字的解决方案
  • ccc-Tips for Deep Learning-李宏毅(8)
  • ArkUI新能力,助力应用开发更便捷
  • vue面试题大全
  • P1307 [NOIP2011 普及组] 数字反转
  • 【服务器数据恢复】NetApp存储无法访问的数据恢复案例
  • (考研湖科大教书匠计算机网络)第四章网络层-第三节2:分类编址的IPv4地址
  • Allegro移动器件时附带的孔和线被同步更改的原因和解决办法
  • 工程监测多通道振弦模拟信号采集仪VTN参数修改
  • 【算法】差分
  • 【LeetCode】剑指 Offer(1)
  • linux rancher 清理docker容器磁盘空间
  • 移动端兼容性问题集锦
  • 【Spark分布式内存计算框架——Spark SQL】4. DataFrame(上)
  • GPS通信
  • Java高频面试题,ReentrantLock 是如何实现锁公平和非公平性的?
  • 「JVM 原理使用」 实际开发中的应用
  • 最最普通程序员,如何利用工资攒够彩礼,成为人生赢家