首页 > php教程 > php手册 > 正文

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

php中文网
发布: 2016-06-06 20:23:03
原创
1256人浏览过

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

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

1. 创建文件 /home/apps/protected/commands/crons.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

复制代码 代码如下:


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的各种方法

复制代码 代码如下:


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/下新建其他类,使用命令行执行。

相关标签:
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门推荐
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号