>  기사  >  백엔드 개발  >  Yii에서 cronjob 예약 작업을 생성하는 예에 대한 자세한 설명

Yii에서 cronjob 예약 작업을 생성하는 예에 대한 자세한 설명

巴扎黑
巴扎黑원래의
2018-05-17 10:54:381357검색

이 글은 Yii 프레임워크에서 cronjob 예약 작업을 생성하는 방법을 주로 소개하고, Yii 예약 작업의 관련 구성, 구현 단계 및 주의 사항을 구체적인 예시 형태로 분석합니다. 도움이 필요한 친구들은 참고할 수 있습니다. 기사에서는 Yii 프레임워크의 Timed 작업 방법에서 cronjob 생성을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 세부 정보는 다음과 같습니다.

protected/config/console.php

<?php
require_once(&#39;env.php&#39;);
// 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;CMS Console&#39;,
  // application components
  &#39;components&#39;=>array(
    //Main DB connection
    &#39;db&#39;=>array(
      &#39;connectionString&#39;=>DB_CONNECTION,
      &#39;username&#39;=>DB_USER,
      &#39;password&#39;=>DB_PWD,
      &#39;enableParamLogging&#39;=>true,
    ),
    &#39;log&#39;=>array(
      &#39;class&#39;=>&#39;CLogRouter&#39;,
      &#39;routes&#39;=>array(
        array(
          &#39;class&#39;=>&#39;CFileLogRoute&#39;,
          &#39;levels&#39;=>&#39;error, warning&#39;,
        ),
      ),
    ),
  ),
);
2. protected/commands/ crons.php

<?php
defined(&#39;YII_DEBUG&#39;) or define(&#39;YII_DEBUG&#39;,true);
// including Yii
require_once(&#39;/../framework/yii.php&#39;);
// we&#39;ll use a separate config file
$configFile=&#39;/config/console.php&#39;;
// creating and running console application
Yii::createConsoleApplication($configFile)->run();

3 특정 예약 작업 추가

예약 작업은 일반적으로

protected/commands/TestCommand.php

class TestCommand extends CConsoleCommand
{
  public function run($args) {
    //todo
  }
}

4와 같은 CConsoleCommand 클래스에서 파생된 명령줄 프로그램입니다. 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에서 cronjob 예약 작업을 생성하는 예에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.