Windows下用cmd命令实例讲解yii2.0 的控制台定时任务
Yii中的资源是和Web页面相关的文件,可为CSS文件,JavaScript文件,图片或视频等,资源放在Web可访问的目录下,直接被Web服务器调用。
有时候有些功能需要做到计划任务中去,因此就需要yii能用php命令去执行。yii2.0是支持php命令行运行的,操作方法如下:
在yii根目录下面有个“yii”文件(不是“yii.bat”),这个文件就是入口。然后“commands”目录下会默认有个“HelloController.php”控制器文件,这个是一个demo。打开这个控制器文件,源码如下(删掉了部分注释):
<?php
namespace app\commands;
use yii\console\Controller;
class HelloController extends Controller
{
/**
* This command echoes what you have entered as the message.
* @param string $message the message to be echoed.
*/
public function actionIndex($message = 'hello world')
{
echo $message . "\n";
}
}
从上面可以看出,在命令行运行时,会继承console下的Controller;而一般“controllers”目录中的控制器会继承web下的Controller。
所以在php命令行中执行yii脚本的步骤为:
1.新建一个脚本
在“commands”目录下面按照“HelloController.php”的格式新建一个控制器脚本文件。
2.在命令行执行脚本
在命令行敲入“php yii项目所在路径/yii 控制器名/方法名”,例如“php E:/wwwroot/yii2/yii hello/index”
如下图所示1:

:或下图所示2:

需要注意的是:php一定要设置环境变量后才能这么用。想知道php是否已加入环境变量,请用“php -v”命令来查看。
Yii中的三种控制器类
base\Controller.php 这个是下面两个的基类
console\Controller.php 这个是控制台控制器
web\Controller.php 这个是web控制器
总结如下:
1:command创建任务
2:Windows测试 :进入根目录 命令yii 加上你的任务如 yii hello
3:Linux测试: 同Windows
4:crontab建立: 定时时间 php目录 yii根目录/yii hello 如:01 1 * ** /opt/php/bin/php /data/www/weixin_yii/yii hello
linux ,定时任务执行方法

Windows下用cmd命令实例讲解yii2.0 的控制台定时任务的更多相关文章
- Windows下的cmd命令行中设置环境编码
我们都知道,Windows下的cmd命令行默认编码是Windows系统的编码,就是ANSI编码或者说是GBK编码的,这样我们编写的很多应用比如php编写utf-8编码的应用在命令行下面运行时都会出现乱 ...
- 在windows下使用cmd命令行对java文件进行编译和执行
windows下利用cmd命令行可以调用jdk里的javac.exe和java.exe对java文件进行编译和执行,前提是jdk已成功安装并正确配置相关环境变量 相关配置链接:java基础学习总结—— ...
- 在windows下使用cmd命令全速下载百度云文件
在windows下使用cmd命令全速下载百度云文件 需要的工具BaiduPCS-GO(链接:https://pan.baidu.com/s/19Sn8gmNi_GZHJwUPu79DPg 密码:gqi ...
- windows下常用cmd命令
CMD命令:开始->运行->键入cmd或command(在命令行里可以看到系统版本.文件系统版本)1. appwiz.cpl:程序和功能 2. calc:启动计算器 3. certmgr. ...
- Windows下使用CMD命令进入和退出MySQL数据库
一.进入 1.在CMD命令窗口敲入命令 mysql -hlocalhost -uroot -p 后按回车(注意这里的"-h"."-u"."-p&quo ...
- Windows下用cmd命令安装及卸载服务
第一种方法: 1. 开始 ->运行 ->cmd2. cd到C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727(Framework版本号按IIS配置) ...
- windows下用cmd命令netstat查看系统端口使用情况
开始--运行--cmd 进入命令提示符 输入netstat -ano 即可看到所有连接的PID 之后在任务管理器中找到这个PID所对应的程序如果任务管理器中没有PID这一项,可以在任务管理器中选&qu ...
- Windows下用cmd命令安装及卸载服务[转]
第一种方法: 1. 开始 ->运行 ->cmd2. cd到C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727(Framework版本号按IIS配置) ...
- Windows下通过CMD命令行程序操作MySQL数据库
注意:如果您的MySQL没有安装在C盘下,先使用命令进入MySQL的安装目录下的bin目录中才可以进行后续操作. 方法如下:例如您安装在D盘.先输入 D: 回车即可进入D盘,再输入cd D:\您my ...
随机推荐
- ASP.Net中的四种状态保持机制
每个人上网可多有过这样的情况,当我们登陆某个网站时,在登陆的旁边会有一个 "记住我" 的复选框,有的网站还会让用户选择记住我.这个记住我是怎么实现的呢? 其实就用利用的是cooki ...
- App导航设计全面梳理——附免费原型模版!
生活中大家或多或少都会有迷路的经验,但你是不是从来没思考过迷路的定义是什么? 迷路的定义其实有两个核心: 1.想要到达一个目的地. 2.不知道自己在哪里,应该往哪走. 和生活中的迷路一样,我们在使用A ...
- mysql 延迟添加唯一索引
MySQL [test]> create table tbl_keyword ( -> id int not null auto_increment primary key, -> ...
- 读书笔记_Effective C++_条款一:将C++视为一个语言联邦
C++起源于C,最初的名称为C with Classes,意为带类的C语言,然而,随着C++的不断发展和壮大,在很多功能上已经远远超越了C,甚至一些C++程序员反过来看C代码会觉得不习惯. C++可以 ...
- react native 初识生命周期
关于生命周期这块,我是看到慕课堂的一个视频,觉得将的很好,引入很容易理解,地址是:https://www.imooc.com/video/14288 如果你们想了解一下,也可以去看看 RN 组件的生 ...
- C# Mongo Client 2.4.2判断是否存在表
public async Task<bool> CollectionExistsAsync(string collectionName) { var filter = new BsonDo ...
- List<String> 2List <Long>
public static List<Integer> CollStringToIntegerLst(List<String> inList){ List<Integer ...
- HighCharts插件学习(二)
HighCharts属性 credits: {版权信息} data: {数据功能模块} drilldown: {钻取} exporting: {导出} labels: {标签} legend: ...
- jQuery选择器--:eq(index)、:lt(index)和:gt(index)
:eq(index) 概述 匹配一个给定索引值的元素 参数 index 从 0 开始计数 :gt(index) 概述 匹配所有大于给定索引值的元素 参数 index 从 0 开始计数 ...
- Fantasia (点强连通分量建图 + 树形DP)
简化一下题意,我们先看成一副强连通的图,这时候应该是最简单了,去点任意点都是其他的乘积.那再加强一点难度,改为两个强连通图连接的非强连通图呢?那应该就是找出关键的那个点,并求出两边的乘积.但是一个一个 ...