Laravel Scheduling Package
程序员文章站
2022-06-22 16:26:09
Laravel 是在 App\Console\Kernel 类中的 schedule 方法去定义所有的调度任务。 iBrand 产品作为一个电商类产品,本身业务需求非常庞大和复杂,全部定义在 schedule 方法中会非常臃肿。而且 iBrand 产品的每个模块都是一个 Package,具有高度的复 ......
Laravel 是在 App\Console\Kernel
类中的 schedule
方法去定义所有的调度任务。
iBrand 产品作为一个电商类产品,本身业务需求非常庞大和复杂,全部定义在 schedule
方法中会非常臃肿。而且 iBrand 产品的每个模块都是一个 Package,具有高度的复用性。
所以我们开发了此包,用来把各个模块的调度任务放在自己的包里,而不是全部放在 App\Console\Kernel
类的 schedule
方法中。
github: ibrandcc/laravel-scheduling
Installation
$ composer require ibrand/laravel-scheduling -vvv
If your Laravel version below 5.5, you need add the follow line to the section providers of config/app.php:
iBrand\Scheduling\ServiceProvider::class,
Usage
extend Scheduling abstract class
use iBrand\Scheduling\Scheduling; class YourSchedule extends Scheduling { public function schedule(){ //Your schedule logic. $this->schedule->call(function () { })->daily(); } }
register
Add follow line to you ServiceProvider register method.
$this->app->make(iBrand\Scheduling\ScheduleList::class)->add(YourSchedule::class);
推荐阅读
-
Laravel如何自定义command命令浅析
-
laravel实现按时间日期进行分组统计方法示例
-
Laravel5.4框架使用socialite实现github登录的方法
-
Laravel5.1数据库连接、创建数据库、创建model及创建控制器的方法
-
Laravel路由设定和子路由设定实例分析
-
Laravel路由研究之domain解决多域名问题的方法示例
-
Laravel5.7框架安装与使用学习笔记图文详解
-
Laravel访问出错提示:`Warning: require(/vendor/autoload.php): failed to open stream: No such file or di解决方法
-
laravel实现按时间日期进行分组统计方法示例
-
Laravel 中创建 Zip 压缩文件并提供下载的实现方法