yii2 commands模式以及配置crontab定时任务的方法


Posted in PHP onAugust 19, 2017

一 ,检测环境:

首先我们切换到项目根目录,yii2正常安装的话有一个commands文件夹,里面有一个示例文件HelloController.php

<?php
namespace app\commands;
use yii\console\Controller;
class HelloController extends Controller
{
 public function actionIndex($message = 'hello world')
 {
  echo $message . "\n";
 }
}

切到项目根目录,命令行输出  php yii hello,输出hello world 说明环境正常

二,书写代码:

可以在commands文件夹新建控制器文件,继承yii\console\Controller;定义类方法,actionIndex方法一般为默认路由,

调试时在项目根目录输入php yii 加上控制器名字(小写)/路由(index的话可省略)

三,linux定时任务crontab.

1关于crontab:

在linux环境下,crontab -l显示定时任务,crontab -e编辑定时任务

2基本语法

基本格式 :

*****command
分 时 日 月 周 命令

第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令

3用法示例

30 21 * * * /usr/local/etc/rc.d/lighttpd restart

#上面的例子表示每晚的21:30重启apache。

 45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
#上面的例子表示每月1、10、22日的4 : 45重启apache。

10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart
#上面的例子表示每周六、周日的1 : 10重启apache。

0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart
#上面的例子表示在每天18 : 00至23 : 00之间每隔30分钟重启apache。

0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart
#上面的例子表示每星期六的11 : 00 pm重启apache。

0 */1 * * * /usr/local/etc/rc.d/lighttpd restart
#每一小时重启apache

四,linux定时任务crontab执行commands下控制器php文件内容

按第三步所写,后面加上 php yii + 项目根路径 + 路由(控制器名/方法名)即可

以上这篇yii2 commands模式以及配置crontab定时任务的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
APMServ使用说明
Oct 23 PHP
关于时间计算的结总
Dec 06 PHP
增加反向链接的101个方法 站长推荐
Jan 31 PHP
php面向对象全攻略 (十五) 多态的应用
Sep 30 PHP
比file_get_contents稳定的curl_get_contents分享
Jan 11 PHP
php对数组排序代码分享
Feb 24 PHP
php实现文件下载简单示例(代码实现文件下载)
Mar 10 PHP
php中用memcached实现页面防刷新功能
Aug 19 PHP
php内存缓存实现方法
Jan 24 PHP
php curl抓取网页的介绍和推广及使用CURL抓取淘宝页面集成方法
Nov 30 PHP
php用户登录之cookie信息安全分析
May 13 PHP
PHP编程一定要改掉的5个不良习惯
Sep 18 PHP
利用 fsockopen() 函数开放端口扫描器的实例
Aug 19 #PHP
PHPMailer使用QQ邮箱实现邮件发送功能
Aug 18 #PHP
PHP实现自动发送邮件功能代码(qq 邮箱)
Aug 18 #PHP
详解PHP如何更好的利用PHPstorm的自动提示
Aug 18 #PHP
Laravel学习教程之本地化模块
Aug 18 #PHP
PDO操作MySQL的基础教程(推荐)
Aug 18 #PHP
Laravel学习教程之路由模块
Aug 18 #PHP
You might like
php面向对象全攻略 (五) 封装性
2009/09/30 PHP
又一个PHP实现的冒泡排序算法分享
2014/08/21 PHP
PHP数组操作――获取数组最后一个值的方法
2015/04/14 PHP
Zend Framework教程之Application和Bootstrap用法详解
2016/03/10 PHP
PHP实现对二维数组某个键排序的方法
2016/09/14 PHP
php封装的验证码工具类完整实例
2016/10/19 PHP
PHP实现链式操作的三种方法详解
2017/11/16 PHP
jQuery中绑定事件的命名空间详解
2011/04/05 Javascript
javascript使用正则控制input输入框允许输入的值方法大全
2014/06/19 Javascript
js与css实现弹出层覆盖整个页面的方法
2014/12/13 Javascript
JavaScript检测鼠标移动方向的方法
2015/05/22 Javascript
JS+CSS实现的简单折叠展开多级菜单效果
2015/09/12 Javascript
js数组如何添加json数据及js数组与json的区别
2015/10/27 Javascript
jQuery选择器用法实例详解
2015/12/17 Javascript
浅析JSONP技术原理及实现
2016/06/08 Javascript
浅谈jQuery中Ajax事件beforesend及各参数含义
2016/12/03 Javascript
详解Node中导入模块require和import的区别
2017/08/11 Javascript
vue + vuex todolist的实现示例代码
2018/03/09 Javascript
微信小程序实现自上而下字幕滚动
2018/07/14 Javascript
javscript 数组扁平化的实现
2020/02/03 Javascript
python处理cookie详解
2014/02/07 Python
python time模块用法实例详解
2014/09/11 Python
Python抓取框架 Scrapy的架构
2016/08/12 Python
Python爬取网页中的图片(搜狗图片)详解
2017/03/23 Python
Python流程控制 if else实现解析
2019/09/02 Python
python GUI库图形界面开发之PyQt5中QWebEngineView内嵌网页与Python的数据交互传参详细方法实例
2020/02/26 Python
利用纯html5绘制出来的一款非常漂亮的时钟
2015/01/04 HTML / CSS
澳大利亚最好的在线时尚精品店:Princess Polly
2018/01/03 全球购物
LEGO玩具英国官方商店:LEGO Shop GB
2018/03/27 全球购物
送给他或她的礼物:FUN.com
2018/08/17 全球购物
Java中实现多态的机制是什么?
2014/12/07 面试题
Android笔试题总结
2014/11/29 面试题
大二学习计划书范文
2014/04/27 职场文书
优秀中职教师事迹材料
2014/08/26 职场文书
小学作文之描写天气
2019/08/15 职场文书
SQL之各种join小结详细讲解
2021/08/04 MySQL