首页 > PHP教程 > php开发知识文章

php -- Yii框架创建cronjob定时任务脚本

本文主要介绍了php -- Yii框架创建cronjob定时任务脚本的方法,结合具体实例分析了Yii框架创建定时任务的相关配置、实现步骤与注意事项,需要的朋友参考下。

1. 修改控制台脚本环境配置文件

protected/config/console.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' => 'PHP Console',
// application components
'components' => array(
//数据库配置
'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

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

class TestCommand extends CConsoleCommand
{
public function run($args)
{
//这里写任务代码
echo "程序执行成功";
}
}

4. 创建cronjob

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

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

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

crontab用法

以上就是本文php -- Yii框架创建cronjob定时任务脚本的全部内容,希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

关闭
感谢您的支持,我会继续努力!
扫码打赏,建议金额1-10元


提醒:打赏金额将直接进入对方账号,无法退款,请您谨慎操作。