Home Backend Development PHP Tutorial yii框架通过控制台命令创建定时任务示例_PHP

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

Jun 01, 2016 am 11:54 AM
yii framework scheduled tasks console

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

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Do you know some reasons why crontab scheduled tasks are not executed? Do you know some reasons why crontab scheduled tasks are not executed? Mar 09, 2024 am 09:49 AM

Summary of some reasons why crontab scheduled tasks are not executed. Update time: January 9, 2019 09:34:57 Author: Hope on the field. This article mainly summarizes and introduces to you some reasons why crontab scheduled tasks are not executed. For everyone Solutions are given for each of the possible triggers, which have certain reference and learning value for colleagues who encounter this problem. Students in need can follow the editor to learn together. Preface: I have encountered some problems at work recently. The crontab scheduled task was not executed. Later, when I searched on the Internet, I found that the Internet mainly mentioned these five incentives: 1. The crond service is not started. Crontab is not a function of the Linux kernel, but relies on a cron.

Xbox System Error E200 [Fixed] Xbox System Error E200 [Fixed] Feb 19, 2024 pm 02:39 PM

This article will explain how to resolve system error E200 on your Xbox console. Typically, this error occurs when your Xbox console gets interrupted while trying to install the latest console operating system update. This error may also occur if the system update is interrupted due to a power outage or network problem. Fix Xbox System Error E200 Use the following fix to fix System Error E200 on your Xbox console: Turn your Xbox console off and on again Perform a system update factory reset your console Let’s get started. 1] Turning your Xbox console off and on again Resetting the power cycle of your Xbox console can effectively eliminate potential temporary glitches and resolve some issues. Follow these steps to turn off and reopen Xbox Control

ThinkPHP6 scheduled task scheduling: scheduled task execution ThinkPHP6 scheduled task scheduling: scheduled task execution Aug 12, 2023 pm 03:28 PM

ThinkPHP6 scheduled task scheduling: scheduled task execution 1. Introduction In the process of web application development, we often encounter situations where certain repetitive tasks need to be executed regularly. ThinkPHP6 provides a powerful scheduled task scheduling function, which can easily meet the needs of scheduled tasks. This article will introduce how to use scheduled task scheduling in ThinkPHP6, and provide some code examples to help understand. 2. Configure scheduled tasks, create scheduled task files, and create a comman in the app directory of the project.

Python implements automatic page refresh and scheduled task function analysis for headless browser collection applications Python implements automatic page refresh and scheduled task function analysis for headless browser collection applications Aug 08, 2023 am 08:13 AM

Python implements automatic page refresh and scheduled task function analysis for headless browser collection applications. With the rapid development of the network and the popularization of applications, the collection of web page data has become more and more important. The headless browser is one of the effective tools for collecting web page data. This article will introduce how to use Python to implement the automatic page refresh and scheduled task functions of a headless browser. The headless browser adopts a browser operation mode without a graphical interface, which can simulate human operation behavior in an automated way, thereby enabling the user to access web pages, click buttons, and fill in information.

How to use PHP to develop a scheduled refresh function for web pages How to use PHP to develop a scheduled refresh function for web pages Aug 17, 2023 pm 04:25 PM

How to use PHP to develop a scheduled refresh function for web pages. With the development of the Internet, more and more websites need to update display data in real time. Refreshing the page in real time is a common requirement, which allows users to obtain the latest data without refreshing the entire page. This article will introduce how to use PHP to develop a scheduled refresh function for web pages and provide code examples. The simplest way to implement scheduled refresh using Meta tag is to use HTML Meta tag to refresh the page regularly. In HTML<head>

How to implement scheduled tasks and periodic tasks in FastAPI How to implement scheduled tasks and periodic tasks in FastAPI Jul 30, 2023 pm 03:53 PM

How to implement scheduled tasks and periodic tasks in FastAPI Introduction: FastAPI is a modern, highly performant Python framework focused on building API applications. However, sometimes we need to perform scheduled tasks and periodic tasks in FastAPI applications. This article describes how to implement these tasks in a FastAPI application and provides corresponding code examples. 1. Implementation of scheduled tasks using APScheduler library APScheduler is a function

How to clear console in C language? How to clear console in C language? Sep 23, 2023 pm 09:57 PM

There are several ways to clear the console or output screen, one of which is the clrscr() function. It clears the screen when the function is called. It is declared in the "conio.h" header file. There are some other methods such as system("cls") and system("clear"), which are declared in the "stdlib.h" header file. The following is the syntax for clearing the console in C language: clrscr();ORsystem("cls");ORsystem("clear");The following is a use

How to use the print() function to output content to the console in Python 3.x How to use the print() function to output content to the console in Python 3.x Jul 29, 2023 pm 01:07 PM

How to use the print() function in Python3.x to output content to the console. In Python, the print() function is a very commonly used function, which can output specified content to the console. This article will introduce in detail how to use the print() function to achieve this function, and attach the corresponding code examples. First, let us understand the basic usage of the print() function. The print() function can accept one or more parameters as input and put them in comma-separated form

See all articles