Laravel 调度器
最后更新于 作者: Eric L. Barnes
Laravel 5 中一项全新的功能是 Artisan 调度器。它旨在简化需要调度的任务。您只需要设置一个调用 php artisan schedule:run
的 cron 作业,并让它每分钟运行一次。
设置好 cron 后,您可以以简洁友好的方式调度任何任务运行。它消除了记住 cron 调度的麻烦,非常简单。这些调度是在您的“app/Console//Kernel.php”文件中创建的。
以下是一个虚构的每小时清除缓存的任务示例
$schedule->command('cache:clear') ->hourly() ->sendOutputTo($filePath) ->emailOutputTo('[email protected]');
但这还不是全部。您还可以调用类方法
$schedule->call('SomeClass@method')->dailyAt('10:00');
或使用闭包
$schedule->call(function(){ //..})->everyThirtyMinutes();
甚至使用终端命令
$schedule->terminal('gulp task')->fridays()->when(function(){ return true;});
Laravel 在创建新功能时始终以开发者为中心,此功能也不例外。请查看可用的不同调度方法
- ->hourly()
- ->daily()
- ->at($time) // 24 小时制
- ->dailyAt($time)
- ->twiceDaily()
- ->weekdays()
- ->mondays()
- ->tuesdays()
- ->wednesdays()
- ->thursdays()
- ->fridays()
- ->saturdays()
- ->sundays()
- ->weekly()
- ->weeklyOn($day, $time)
- ->monthly()
- ->yearly()
- ->everyFiveMinutes()
- ->everyTenMinutes()
- ->everyThirtyMinutes()
- ->days() // 星期几。
我喜欢这种语法,甚至还有更多内容,您可以在 此文件 中找到。如果您想深入了解,请查看 Laravel 5 中的所有新功能
这是另一个旨在提高您开发人员幸福感的功能。我认为您会喜欢它,它将为您的应用程序带来强大的功能。