Yii框架创建cronjob定时任务的方法分析

2025-05-27 0 92

本文实例讲述了Yii框架创建cronjob定时任务的方法。分享给大家供大家参考,具体如下:

1. 添加环境配置

protected/config/console.php

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27
<?php

require_once('env.php');

// This is the configuration for yiic console application.

// Any writable CConsoleApplication properties can be configured here.

return array(

'basePath'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..',

'name'=>'CMS Console',

// application components

'components'=>array(

//Main DB connection

'db'=>array(

'connectionString'=>DB_CONNECTION,

'username'=>DB_USER,

'password'=>DB_PWD,

'enableParamLogging'=>true,

),

'log'=>array(

'class'=>'CLogRouter',

'routes'=>array(

array(

'class'=>'CFileLogRoute',

'levels'=>'error, warning',

),

),

),

),

);

2. 添加定时任务执行模块

protected/commands/crons.php

?

1

2

3

4

5

6

7

8
<?php

defined('YII_DEBUG') or define('YII_DEBUG',true);

// including Yii

require_once('/../framework/yii.php');

// we'll use a separate config file

$configFile='/config/console.php';

// creating and running console application

Yii::createConsoleApplication($configFile)->run();

3. 添加具体的定时任务

定时任务通常是一个命令行程序,从CConsoleCommand类派生,比如
protected/commands/TestCommand.php

?

1

2

3

4

5

6
class TestCommand extends CConsoleCommand

{

public function run($args) {

//todo

}

}

4. 创建cronjob

?

1
30 0 * * * www php /path/to/crons.php Test >>/path/to/logs/test.log

5. 传入参数给定时任务中的run($params)

?

1
30 0 * * * www php /path/to/crons.php Test param1 param2 ...

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 Yii框架创建cronjob定时任务的方法分析 https://www.kuaiidc.com/72781.html

相关文章

发表评论
暂无评论