Yii實(shí)現(xiàn)Command任務(wù)處理的方法詳解
本文實(shí)例講述了Yii實(shí)現(xiàn)Command任務(wù)處理的方法。分享給大家供大家參考,具體如下:
1.配置,執(zhí)行任務(wù)所需要的組件
任務(wù)配置文件:/protected/config/console.php
配置方法跟配置main文件差不多
<?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'=>'My Console Application',
// application components
// 自動(dòng)載入的模型和組件類(lèi)
'import'=>array(
'application.models.*',//載入"application/models/"文件夾下的所有模型類(lèi)
'application.components.*',//載入"application/components/"文件夾下的所有應(yīng)用組件類(lèi)
'application.extensions.*',//載入"application/extensions/"文件夾下的所有應(yīng)用組件類(lèi)
),
'components'=>array(
// uncomment the following to use a MySQL database
'db'=>array(
'connectionString' => 'mysql:host=localhost;dbname=dbname',//連接mysql數(shù)據(jù)庫(kù)
'emulatePrepare' => true,
'username' => 'root',//MySQL數(shù)據(jù)庫(kù)用戶名
'password' => '123456',//MySQL數(shù)據(jù)庫(kù)用戶密碼
'charset' => 'utf8',//MySQL數(shù)據(jù)庫(kù)編碼
'tablePrefix' => 'zd_', //MySQL數(shù)據(jù)庫(kù)表前綴
'enableProfiling'=>true,
'enableParamLogging'=>true,
),
//加載Email組件
'mailer' => array(
'class' => 'application.extensions.mailer.EMailer',
),
),
);
2.任務(wù)文件
放在 /protected/commands/ 文件目錄下繼承 CConsoleCommand 基類(lèi)的為任務(wù)文件 命名方法為 任務(wù)名稱+Command
例如 GoCommand.php
<?php
/**
* 自動(dòng)運(yùn)行文件
*/
class GoCommand extends CConsoleCommand
{
/**
* 死循環(huán)輸出
*/
public function run(){
for($i=1;$i>0;$i++){
self::echoWord($i);
sleep(2);//休眠2秒
//跳出
if(i==500){
break;
}
}
}
/**
* 輸出hollo word
*/
public function echoWord($i){
echo "hollo word --$i\n";
}
}
3.執(zhí)行任務(wù)
打開(kāi)命令行工具,進(jìn)入項(xiàng)目的/protected 目錄下 輸入yiic命令即出現(xiàn)提示,提示列表顯示剛才寫(xiě)的任務(wù)文件
E:\project\app\protected>yiic Yii command runner (based on Yii v1.1.12) Usage: E:\zeee\zyd\protected\yiic.php <command-name> [parameters...] The following commands are available: - go - mailqueue - message - migrate - shell - webapp To see individual command help, use the following:
執(zhí)行命令 yiic go 可實(shí)現(xiàn)任務(wù)處理
更多關(guān)于Yii相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《Yii框架入門(mén)及常用技巧總結(jié)》、《php優(yōu)秀開(kāi)發(fā)框架總結(jié)》、《smarty模板入門(mén)基礎(chǔ)教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門(mén)教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門(mén)教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家基于Yii框架的PHP程序設(shè)計(jì)有所幫助。
- yii框架通過(guò)控制臺(tái)命令創(chuàng)建定時(shí)任務(wù)示例
- Yii2框架使用計(jì)劃任務(wù)的方法
- Yii框架實(shí)現(xiàn)記錄日志到自定義文件的方法
- Yii 2.0如何使用頁(yè)面緩存方法示例
- 解決Yii2郵件發(fā)送結(jié)果返回成功,但接收不到郵件的問(wèn)題
- yii 2.0中表單小部件的使用方法示例
- Yii框架批量插入數(shù)據(jù)擴(kuò)展類(lèi)的簡(jiǎn)單實(shí)現(xiàn)方法
- Yii2框架中日志的使用方法分析
- Yii框架form表單用法實(shí)例
- yii的CURD操作實(shí)例詳解
- Yii2搭建后臺(tái)并實(shí)現(xiàn)rbac權(quán)限控制完整實(shí)例教程
- Yii框架創(chuàng)建cronjob定時(shí)任務(wù)的方法分析
相關(guān)文章
php 分頁(yè)函數(shù)multi() discuz
discuz摘出來(lái)的php分頁(yè)函數(shù)multi(),大家以后也可以從discuz來(lái)獲取各種比較好的函數(shù)了,學(xué)習(xí)要注意借鑒。2009-06-06
PHP父類(lèi)調(diào)用子類(lèi)方法的代碼例子
這篇文章主要介紹了PHP父類(lèi)調(diào)用子類(lèi)方法的代碼例子,需要的朋友可以參考下2014-04-04
ajax完美實(shí)現(xiàn)兩個(gè)網(wǎng)頁(yè) 分頁(yè)功能的實(shí)例代碼
ajax完美實(shí)現(xiàn)兩個(gè)網(wǎng)頁(yè) 分頁(yè)功能的實(shí)例代碼,需要的朋友可以參考一下2013-04-04
laravel5.5框架的上傳圖片功能實(shí)例分析【僅傳到服務(wù)器端】
這篇文章主要介紹了laravel5.5框架的上傳圖片功能,結(jié)合實(shí)例形式分析了laravel5.5框架將圖片上傳到服務(wù)器端的相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下2019-12-12
基于PHP讀取TXT文件向數(shù)據(jù)庫(kù)導(dǎo)入海量數(shù)據(jù)的方法
本篇文章小編為大家介紹,基于PHP讀取TXT文件向數(shù)據(jù)庫(kù)導(dǎo)入海量數(shù)據(jù)的方法。需要的朋友參考下2013-04-04
解決laravel-admin 自己新建頁(yè)面里 js 需要刷新一次的問(wèn)題
今天小編就為大家分享一篇解決laravel-admin 自己新建頁(yè)面里 js 需要刷新一次的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-10-10
PHP中如何使用session實(shí)現(xiàn)保存用戶登錄信息
這篇文章主要給大家介紹在php中是如何使用session實(shí)現(xiàn)保存用戶登錄信息的,涉及到php session 用戶登錄等一些知識(shí)點(diǎn),使用session保存用戶登錄信息要比cookie安全很多。感興趣的朋友一起學(xué)習(xí)吧2015-10-10
PHPExcel讀取Excel文件的實(shí)現(xiàn)代碼
用PHPExcel讀取Excel 2007 或者Excel2003文件,需要的朋友,可以參考下。2011-12-12

