Maison > php教程 > PHP开发 > le corps du texte

Explication détaillée de la méthode d'implémentation du traitement des tâches de commande dans Yii

高洛峰
Libérer: 2016-12-30 16:19:26
original
1530 Les gens l'ont consulté

L'exemple de cet article décrit comment Yii implémente le traitement des tâches de commande. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

1. Configuration, composants requis pour effectuer la tâche

Fichier de configuration de la tâche : /protected/config/console.php

La méthode de configuration est similaire à la configuration du fichier principal

<?php
// This is the configuration for yiic console application.
// Any writable CConsoleApplication properties can be configured here.
return array(
  &#39;basePath&#39;=>dirname(__FILE__).DIRECTORY_SEPARATOR.&#39;..&#39;,
  &#39;name&#39;=>&#39;My Console Application&#39;,
  // application components
  // 自动载入的模型和组件类
  &#39;import&#39;=>array(
      &#39;application.models.*&#39;,//载入"application/models/"文件夹下的所有模型类
      &#39;application.components.*&#39;,//载入"application/components/"文件夹下的所有应用组件类
      &#39;application.extensions.*&#39;,//载入"application/extensions/"文件夹下的所有应用组件类
  ),
  &#39;components&#39;=>array(
      // uncomment the following to use a MySQL database
      &#39;db&#39;=>array(
          &#39;connectionString&#39; => &#39;mysql:host=localhost;dbname=dbname&#39;,//连接mysql数据库
          &#39;emulatePrepare&#39; => true,
          &#39;username&#39; => &#39;root&#39;,//MySQL数据库用户名
          &#39;password&#39; => &#39;123456&#39;,//MySQL数据库用户密码
          &#39;charset&#39; => &#39;utf8&#39;,//MySQL数据库编码
          &#39;tablePrefix&#39; => &#39;zd_&#39;, //MySQL数据库表前缀
          &#39;enableProfiling&#39;=>true,
          &#39;enableParamLogging&#39;=>true,
      ),
      //加载Email组件
      &#39;mailer&#39; => array(
          &#39;class&#39;   => &#39;application.extensions.mailer.EMailer&#39;,
      ),
  ),
);
Copier après la connexion

2. Le fichier de tâches

est placé dans le répertoire du fichier /protected/commands/ et hérite de la base CConsoleCommand classe. La méthode de dénomination du fichier de tâche est Nom de la tâche Commande

Par exemple, GoCommand.php

<?php
/**
 * 自动运行文件
 */
class GoCommand extends CConsoleCommand
{
  /**
   * 死循环输出
   */
  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";
  }
}
Copier après la connexion

3. Exécutez la tâche

Ouvrez l'outil de ligne de commande. , entrez dans le répertoire /protected du projet et entrez la commande yiic. Une invite apparaîtra et une liste d'invites apparaîtra. Affichez le fichier de tâche qui vient d'être écrit

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:
Copier après la connexion

Exécutez la commande yiic go pour réaliser. traitement des tâches

J'espère que cet article sera utile à la programmation PHP de chacun basée sur le framework Yii.

Pour des explications plus détaillées sur la façon dont Yii implémente le traitement des tâches de commande et les articles associés, veuillez prêter attention au site Web PHP chinois !

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Recommandations populaires
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!