? ? ? ? 創(chuàng)建一個(gè)任務(wù),創(chuàng)建成功后會(huì)在App/Console/Commands中生成一個(gè)以Test命名的文件,我們可以在這里面寫我們的任務(wù)指令。
php artisan make:command Test
? ? ? ? 運(yùn)行這個(gè)定時(shí)任務(wù) run 是運(yùn)行一次,我們可以用來測試是否成功,work是一直運(yùn)行,每分鐘執(zhí)行一次,當(dāng)執(zhí)行到我們設(shè)置的時(shí)間就會(huì)自動(dòng)執(zhí)行。
php artisan schedule:run
php artisan schedule:work
/**
? ? ?* The name and signature of the console command.
? ? ?*
? ? ?* @var string
? ? ?* 給我們的任務(wù)取一個(gè)名稱
? ? ?*/
? ? 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
? ? ?* 在這里進(jìn)行我們的邏輯編寫
? ? ?*/
? ? public function handle()
? ? {
? ? ? ? return 0;
? ? }
? ? ? ? 我們在將邏輯完成之后,就需要在App/Console中的Kernel.php文件當(dāng)中去設(shè)置我們的定時(shí)任務(wù)的時(shí)間段。
/**
? ? ?* Define the application's command schedule.
? ? ?*
? ? ?* @param \Illuminate\Console\Scheduling\Schedule $schedule
? ? ?* @return void
? ? ?* @name 為我們定義的任務(wù)名稱 只需要操作這里就OK
? ? ?*/
? ? protected function schedule(Schedule $schedule)
? ? {
? ? ? ? //我們可以根據(jù)需求去調(diào)整我們的定時(shí)任務(wù)的運(yùn)行時(shí)間,我會(huì)在最下面將時(shí)間列出來
? ? ? ? $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');
? ? }
? ? ? ? ?成功實(shí)例
?
?
?
?定時(shí)任務(wù)的時(shí)間設(shè)置
? ? ? ? 這是定時(shí)任務(wù)的時(shí)間調(diào)度設(shè)置。
方法?? ????????????????????????描述
->cron('* * * * *');?? ?自定義 Cron 計(jì)劃執(zhí)行任務(wù)
->everyMinute();?? ?每分鐘執(zhí)行一次任務(wù)
->everyTwoMinutes();?? ?每兩分鐘執(zhí)行一次任務(wù)
->everyThreeMinutes();?? ?每三分鐘執(zhí)行一次任務(wù)
->everyFourMinutes();?? ?每四分鐘執(zhí)行一次任務(wù)
->everyFiveMinutes();?? ?每五分鐘執(zhí)行一次任務(wù)
->everyTenMinutes();?? ?每十分鐘執(zhí)行一次任務(wù)
->everyFifteenMinutes();?? ?每十五分鐘執(zhí)行一次任務(wù)
->everyThirtyMinutes();?? ?每三十分鐘執(zhí)行一次任務(wù)
->hourly();?? ?每小時(shí)執(zhí)行一次任務(wù)
->hourlyAt(17);?? ?每小時(shí)第 17 分鐘執(zhí)行一次任務(wù)
->everyTwoHours();?? ?每兩小時(shí)執(zhí)行一次任務(wù)
->everyThreeHours();?? ?每三小時(shí)執(zhí)行一次任務(wù)
->everyFourHours();?? ?每四小時(shí)執(zhí)行一次任務(wù)
->everySixHours();?? ?每六小時(shí)執(zhí)行一次任務(wù)
->daily();?? ?每天 0 點(diǎn)執(zhí)行一次任務(wù)
->dailyAt('13:00');?? ?每天 13:00 執(zhí)行一次任務(wù)
->twiceDaily(1, 13);?? ?每天 01:00 和 13:00 各執(zhí)行一次任務(wù)
->weekly();?? ?每周日 00:00 執(zhí)行一次任務(wù)
->weeklyOn(1, '8:00');?? ?每周一的 08:00 執(zhí)行一次任務(wù)
->monthly();?? ?每月第一天 00:00 執(zhí)行一次任務(wù)
->monthlyOn(4, '15:00');?? ?每月 4 號的 15:00 執(zhí)行一次任務(wù)
->lastDayOfMonth('15:00');?? ?每月最后一天 15:00 執(zhí)行一次任務(wù)
->quarterly();?? ?每季度第一天 00:00 執(zhí)行一次任務(wù)
->yearly();?? ?每年第一天 00:00 執(zhí)行一次任務(wù)
->timezone('America/New_York');?? ?設(shè)置時(shí)區(qū)
? ? ? ? 下面是定時(shí)任務(wù)的一些約束。
方法?? ?????????????????描述
->weekdays();?? ?限制任務(wù)在工作日執(zhí)行
->weekends();?? ?限制任務(wù)在周末執(zhí)行
->sundays();?? ?限制任務(wù)在周日執(zhí)行
->mondays();?? ?限制任務(wù)在周一執(zhí)行
->tuesdays();?? ?限制任務(wù)在周二執(zhí)行
->wednesdays();?? ?限制任務(wù)在周三執(zhí)行
->thursdays();?? ?限制任務(wù)在周四執(zhí)行
->fridays();?? ?限制任務(wù)在周五執(zhí)行
->saturdays();?? ?限制任務(wù)在周六執(zhí)行
->days(array|mixed);?? ?限制任務(wù)在每周的指定日期執(zhí)行
->between($start, $end);?? ?限制任務(wù)在 $start 和 $end 區(qū)間執(zhí)行
->when(Closure);?? ?限制任務(wù)在閉包返回為真時(shí)執(zhí)行
->environments($env);?? ?限制任務(wù)在特定環(huán)境中執(zhí)行
總結(jié)
1.先創(chuàng)建一個(gè)定時(shí)任務(wù),并且命名。
2.在創(chuàng)建的定時(shí)任務(wù)中書寫我們的邏輯信息
3.在Kernel文件中設(shè)置定時(shí)任務(wù)的運(yùn)行時(shí)間
4.運(yùn)行定時(shí)任務(wù),進(jìn)行測試文章來源:http://www.zghlxwxcb.cn/news/detail-441345.html
我們能夠在laravel8中文文檔中的任務(wù)調(diào)度去找到相關(guān)的信息 Laravel8 任務(wù)調(diào)度文章來源地址http://www.zghlxwxcb.cn/news/detail-441345.html
到了這里,關(guān)于Laravel創(chuàng)建定時(shí)任務(wù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!