以下由我们在信易网络公司开发项目的时候终结出的一些经验

Create console application

创建命令行应用

In advance template there is already a file yii. And there is no need to run it as php, it is Linux script.

在高级模版中的 yii 文件,它是一个 Linux 脚本,不需要使用PHP来运行。

Create cron service command

创建计划任务服务命令

Create a controller in console/controllers

在 console/controllers 文件夹下创建一个控制器

I have created as TestController.php

我创建了一个名为 TestController.php 的文件

<?php

  
namespace console\controllers;
  
use yii\console\Controller;
  
/**
 * Test controller
 */
class TestController extends Controller {
  
    public function actionIndex() {
        echo "cron service runnning";
    }
  
    public function actionMail($to) {
        echo "Sending mail to " $to;
    }
  
}

This controller should be use the console controller name space

这个控制器应当使用命令行控制器的命名空间

use yii\console\Controller;

How to run it

如何运行

run it as

使用如下方式运行

yii test

I have test it on windows by running

我在 windows 下使用如下方式运行

D:\xampp\htdocs\yii2>d:\xampp\php\php yii test

cron service runnning
D:\xampp\htdocs\yii2>

How to pass params

如何传递参数

yii test/mail [--to="hemctest@gmail.com"]

in windows for test it run as

在 windows 中测试如下

D:\xampp\htdocs\yii2>d:\xampp\php\php yii test/mail [--to="hemctest@gmail.com"]

Sending mail to [--to=hemctest@gmail.com]

官方命令行应用开发文档见此

英文原文: How to implement cron in Yii 2

本文由专注于成都网站建设的信易网络发布,更多关于yii的信息请关注信易网络随后的发布,信易网络的官网http://www.ir58.com

 

在Yii2.0中实现计划任务(cron)的更多相关文章

  1. yii2.0中url重写实现方法

    在yii框架里有前台和后台页面,举例前台url重写. 控制器与路由 控制器以Controller作为后缀,继承自yii\web\Controller; 动作以action作为前缀,public访问修饰 ...

  2. yii2.0 中的队列

    a yii2 extension to make simple to use queue. yii2-queue让队列的使用在yii2中变得更轻松,她为各种队列组件的使用提供了一个标准的接口,您只需要 ...

  3. YII2.0中实现高级注册

    如何在不修改逻辑代码的情况下完美解决以上三个问题?看了下面的教程,一目了然! 以高级版2.0.6为例,打开/frontend/models/SignupForm.php class SignupFor ...

  4. Yii2.0中场景的使用小记

    熟悉Yii框架的人都知道,灵活的使用场景可以达到事半功倍的效果! 比如普通的数据的新增.修改,新增需要验证其中两个字段,而修改只需要验证其中一个字段:还有种情况,也是我们现在用到的,同一张表(同一个m ...

  5. yii2.0中Rbac 怎么添加超加管理员

    最笨的是定义常量.具体怎么做?看下面: //定义在控制器声明上面define('BEST_PHPER',serialize(array('admin','admin1')));//设置admin管理员 ...

  6. yii2.0中数据缓存之增删改查

    public function actionSss(){ /* * 获取到缓存 * 这里是获取的是根目录下 的common/main.php中的缓存类组件 * */ $cache=\Yii::$app ...

  7. yii2.0中解决post的400错误

    不想用gii的表单自己写表单,但是又遇到了400错误,怎么解决?下面为你解答一下:

  8. 在yii2.0中封装一个生成验证码的控制器

    frontend目录下/封装的验证码类: <?php namespace frontend\controllers; use yii\base\Controller; class CapathC ...

  9. Yii2.0中form->field如何获取主表的一个字段并且设置为只读

    <?= $form->field($model, 'last_login_time')->textInput(['readonly' => 'true']) ?>

随机推荐

  1. snowflake算法(java版)

     转自:http://www.cnblogs.com/haoxinyue/p/5208136.html 1. 数据库自增长序列或字段 最常见的方式.利用数据库,全数据库唯一. 优点: 1)简单,代码方 ...

  2. Identity-第三章 Authorize原理解析

    本篇旨在解析Identity中角色限制的原理. 需要的工具:Visual Studio.Reflector 问题提出: 1.当我们需要限制某个Controller的名称只需要某个或者某几个角色访问,这 ...

  3. HttpClientUtil

    package com.uniubi.management.util; import java.io.IOException; import java.io.InterruptedIOExceptio ...

  4. C# DataTable的詳細使用方法

    在项目中经经常使用到DataTable,假设DataTable使用得当,不仅能使程序简洁有用,并且可以提高性能,达到事半功倍的效果,现对DataTable的使用技巧进行一下总结. 一.DataTabl ...

  5. Android将应用log信息保存文件

    相信大家在做应用调试的时候,不可能时时通过USB线连着电脑去查看log信息,所以,将应用的log信息保存到手机本地就很有必要了,有助我们从这些log信息中提取有用的部分,以解决一些bug,下面我把网上 ...

  6. PagerSlidingTabStrip

    https://github.com/jpardogo/PagerSlidingTabStrip     

  7. 电子设计省赛--SPWM(死区时间)

    //2014年4月17日 //2014年6月20日入"未完毕" //2014年6月21日 有两种方案:双定时器和单定时器 学长表示双定时器输出波形不好,还是单定时器好. 原理例如以 ...

  8. OPTIMIZE TABLE

    INNODB 不支持 mysql> OPTIMIZE TABLE t; +--------+----------+----------+----------------------------- ...

  9. netty Getting Started--reference

    reference from:http://docs.jboss.org/netty/3.1/guide/html/start.html 1.1. Before Getting Started 1.2 ...

  10. c#中[Flags] 枚举类型定义问题_百度知道

    [Flags]的微软解释是“指示可以将枚举作为位域(即一组标志)处理.”其实就是在编写枚举类型时,上面附上Flags特性后,用该枚举变量是既可以象整数一样进行按位的“|”或者按位的“&”操作了 ...