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


Posted in PHP onMay 23, 2017

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

1. 添加环境配置

protected/config/console.php

<?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

<?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) {
    //todo
  }
}

4. 创建cronjob

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

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

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

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

PHP 相关文章推荐
刚才在简化php的库,结果发现很多东西
Dec 31 PHP
php mysql数据库操作类
Jun 04 PHP
php设计模式  Command(命令模式)
Jun 17 PHP
Youku 视频绝对地址获取的方法详解
Jun 26 PHP
使用PHP curl模拟浏览器抓取网站信息
Oct 28 PHP
ThinkPHP独立分组使用的注意事项
Nov 25 PHP
php限制上传文件类型并保存上传文件的方法
Mar 13 PHP
php将远程图片保存到本地服务器的实现代码
Aug 03 PHP
php通过curl添加cookie伪造登陆抓取数据的方法
Apr 02 PHP
php解析base64数据生成图片的方法
Dec 06 PHP
PHP实现二维数组根据key进行排序的方法
Dec 30 PHP
TP5框架model常见操作示例小结【增删改查、聚合、时间戳、软删除等】
Apr 05 PHP
php注册审核重点解析(数据访问)
May 23 #PHP
php + nginx项目中的权限详解
May 23 #PHP
Yii框架实现记录日志到自定义文件的方法
May 23 #PHP
Yii 2.0如何使用页面缓存方法示例
May 23 #PHP
PHP创建单例后台进程的方法示例
May 23 #PHP
解决Yii2邮件发送结果返回成功,但接收不到邮件的问题
May 23 #PHP
yii 2.0中表单小部件的使用方法示例
May 23 #PHP
You might like
使用PHP破解防盗链图片的一个简单方法
2014/06/07 PHP
PHP读取汉字的点阵数据
2015/06/22 PHP
PHP用户注册邮件激活账户的实现代码
2017/05/31 PHP
JS 获取span标签中的值的代码 支持ie与firefox
2009/08/24 Javascript
使用jQuery避免鼠标双击的解决方案
2013/08/21 Javascript
js实现简单登录功能的实例代码
2013/11/09 Javascript
jquery使用animate方法实现控制元素移动
2015/03/27 Javascript
jQuery页面元素动态添加后绑定事件丢失方法,非 live
2016/06/16 Javascript
Laravel中常见的错误与解决方法小结
2016/08/30 Javascript
canvas绘制环形进度条
2017/02/23 Javascript
JS实现的全选、全不选及反选功能【案例】
2019/02/19 Javascript
vue-cli3使用 DllPlugin 实现预编译提升构建速度
2019/04/24 Javascript
python之super的使用小结
2018/08/13 Python
基于Python解密仿射密码
2019/10/21 Python
python被修饰的函数消失问题解决(基于wraps函数)
2019/11/04 Python
使用OpenCV获取图片连通域数量,并用不同颜色标记函
2020/06/04 Python
在Python3.74+PyCharm2020.1 x64中安装使用Kivy的详细教程
2020/08/07 Python
Python 的 __str__ 和 __repr__ 方法对比
2020/09/02 Python
Python通过yagmail实现发送邮件代码解析
2020/10/27 Python
css3的transform造成z-index无效解决方案
2014/12/04 HTML / CSS
用HTML5制作烟火效果的教程
2015/05/12 HTML / CSS
中专生职业生涯规划书范文
2014/01/10 职场文书
预备党员政审材料
2014/02/04 职场文书
人力资源管理专业自荐书范文
2014/02/10 职场文书
优秀毕业生自我鉴定
2014/02/11 职场文书
老公保证书范文
2014/04/29 职场文书
优秀语文教师事迹
2014/05/18 职场文书
党的群众路线教育实践活动对照检查材料
2014/09/22 职场文书
党员个人对照检查材料
2014/10/01 职场文书
2014年服务行业工作总结
2014/11/18 职场文书
幼儿学前班评语
2014/12/29 职场文书
2015年大学班长个人工作总结
2015/04/24 职场文书
担保贷款承诺书
2015/04/30 职场文书
golang gopm get -g -v 无法获取第三方库的解决方案
2021/05/05 Golang
TV动画《史上最强大魔王转生为村民A》番宣CM公布
2022/04/01 日漫
Nginx反向代理、重定向
2022/04/13 Servers