denisogr / yii2-cronjobs
cronjobs
dev-master
2017-05-17 08:06 UTC
Requires
- yiisoft/yii2: *
This package is not auto-updated.
Last update: 2024-09-28 17:12:38 UTC
README
将 crontab 放到控制台脚本中的最简单方法。
但有一些改动
- 与 yii2 合作
- 在参数中设置配置(不在 phpDocs 中)。
我将 crontab 的设置转移到本地设置(参数)配置中,以便应用程序可以在不同服务器上运行,这些服务器具有不同的 crontab 集合。
安装
- 步骤 1: 安装此扩展的首选方式是通过 composer。
运行以下命令
php composer.phar require --prefer-dist denisogr/yii2-cronjobs "dev-master"
或者将以下内容添加到你的 composer.json
文件的 require 部分。
"denisogr/yii2-cronjobs": "dev-master"
到
- 步骤 2: 在控制台配置中设置别名 @runnerScript。这是运行脚本的全路径(我没有找到其他方法来获取运行脚本)。根据你的项目更改运行脚本路径(对于 Yii2 Basic 应用程序)。
Yii::setAlias('@runnerScript', dirname(__DIR__) .'/yii');
- 步骤 3: 添加到控制台配置
'controllerMap' => [
'cron' => [
'class' => 'denisog\cronjobs\CronController'
],
],
- 步骤 4: 将任务添加到系统调度程序(Unix 上的 cron,Windows 上的任务计划程序),以每分钟运行一次
* * * * * /path/to/yii/application/protected/yiic cron
用法
在 params 数组中添加带有 crontab 设置
'cronJobs' =>[
'test/example1' => [
'cron' => '* * * * *',
],
'test/example2' => [
'cron' => '10 * * * *',
],
],
你可以指向来自 这里 的任何设置。