yii框架通过控制台命令创建定时任务示例

   2015-10-26 0
核心提示:这篇文章主要介绍了yii框架通过控制台命令创建定时任务示例,需要的朋友可以参考下

假设Yii项目路径为 /home/apps/

1. 创建文件 /home/apps/protected/commands/crons.php

复制代码 代码如下:

<?php

$yii = '/home/apps/framework/yii.php';

require_once($yii); 

$configFile = dirname(__FILE__).'/../config/console.php';

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

2. 创建需要的配置文件 /home/apps/protected/config/console.php,配置需要的组件、数据库连接,日志等信息,格式类似主配置文件main.php

复制代码 代码如下:

<?php 
return array(
    'basePath'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..',

    'name'=>'Emergency',

    'import'=>array( 
            'application.models.*',
            'application.components.*',
            'application.extensions.*',
    ),

    'components'=>array(
        'log'=>array(
            'class'=>'CLogRouter',
            'routes'=>array(
                array(
                    'class'=>'CFileLogRoute',
                    'levels'=>'info, warning, error',
                ),
            ),
        ),
        'db'=>array(
            'class'=>'application.extensions.PHPPDO.CPdoDbConnection',
            'pdoClass' => 'PHPPDO',
            'connectionString' => 'mysql:host=xxxx;dbname=xxx',
            'emulatePrepare' => true,
            'username' => 'xxx',
            'password' => 'xxx',
            'charset' => 'utf8',
            'tablePrefix' => 'tbl_',
        ),
    ), 

    'params' => require('params.php'),
);

3. 在 /home/apps/protected/commands/ 下新建 TestCommand 类,继承 CConsoleCommand,在TestCommand中,可以使用项目的配置信息和Yii的各种方法

复制代码 代码如下:

<?php 
class TestCommand  extends CConsoleCommand 

    public function run()
    { 
        ...
    } 
}

4. 创建定时任务

复制代码 代码如下:

$ crontab -e

插入

复制代码 代码如下:

1 * * * * /home/php/bin/php -f /home/apps/protected/commands/crons.php Test &

即为每小时的第一分钟执行TestCommand类中的内容,类似的可以在/home/apps/protected/commands/下新建其他类,使用命令行执行。

 
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与乐学笔记(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • Yii框架Yiiapp()的理解
    Yii框架Yiiapp()的理解
    Yii::app() 是一个实例化的对象,是我们在当前框架里边可以直接操作的对象,我们可以把这个对象理解成请求应用的第一个对象。Yii框架是纯OOP面向对象框架,也就是利用对象调用类的属性、方法,完成应用请求。通过上图分析,我们知道了Yii::app()是系统第一个
    11-16 Yii
  • PHP的Yii框架中行为的定义与绑定方法讲解
    定义行为要定义行为,通过继承 yii\base\Behavior 或其子类来建立一个类。如:namespace app\components;use yii\base\Behavior;class MyBehavior extends Behavior{public $prop1;private $_prop2;public function getProp2(){return $this-_prop2;}public f
    09-08 Yii
  • Yii框架的Log系统的分析
    Yii框架的Log系统的分析
    昨天阅读了Yii框架中log部分的源代码,框架提供了灵活、强大的log功能,如果不是非常特殊的需求,框架中自带的类就已经能够满足一般的应用的需求了。实现log功能的源代码被存放在 framework /logging 目录下,这个目录下的代码都包含在包system.logging中。本
    08-30 Yii
  • PHP的Yii框架的常用日志操作总结
    这篇文章主要介绍了PHP的Yii框架的常用日志操作总结,包括消息的过略和格式化等基本内容,需要的朋友可以参考下
    12-14 PHPYii日志
  • PHP Yii框架之表单验证规则大全
    Yii是一个基于组件的高性能PHP框架,用于开发大型Web应用。Yii采用严格的OOP编写,并有着完善的库引用以及全面的教程,本文给大家介绍php yii框架之表单验证规则大全,感兴趣的朋友一起学习吧
  • PHP YII框架开发小技巧之模型(models)中rules自
    yii的models中rules部分是一些表单的验证规则,对于表单验证有帮助,在相应的视图(views)里面添加了表单,在表单被提交之前程序都会自动先来这里面的规则里验证,只有通过对其有效的限制规则后才能被提交,可以很有效地保证表单安全和信息的有效性
  • PHP基于yii框架实现生成ICO图标
    本文给大家分享了2则php生成ICO图标的代码,第一款是基于YII框架实现的,第二款是纯php编写,都非常的不错,有需要的小伙伴可以参考下
  • yii框架源码分析之创建controller代码
    我们可以看到有时会使用protected目录下的controller,有时会使用module中controller,具体是如何处理的呢,请看如下的分析
  • yii框架中的Url生产问题小结
    yii框架中的Url生产问题小结,需要的朋友可以参考下。
    11-12 Url
  • PHP 基于Yii框架中使用smarty模板的方法详解
    本篇文章是对在Yii框架中使用smarty模板的方法进行了详细的分析介绍,需要的朋友参考下
点击排行