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 相关文章推荐
PHP6 mysql连接方式说明
Feb 09 PHP
php 图像函数大举例(非原创)
Jun 20 PHP
PHP输出XML到页面的3种方法详解
Jun 06 PHP
ThinkPHP之M方法实例详解
Jun 20 PHP
Javascript与PHP验证用户输入URL地址是否正确
Oct 09 PHP
smarty简单入门实例
Nov 28 PHP
PHP简单实现DES加密解密的方法
Jul 12 PHP
PHP实现的mysql主从数据库状态检测功能示例
Jul 20 PHP
PHP类与对象后期静态绑定操作实例详解
Dec 20 PHP
PHP PDOStatement::bindParam讲解
Jan 30 PHP
laravel实现前后台路由分离的方法
Oct 13 PHP
PHP 进程池与轮询调度算法实现多任务的示例代码
Nov 26 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
解析file_get_contents模仿浏览器头(user_agent)获取数据
2013/06/27 PHP
PHP SOCKET编程详解
2015/05/22 PHP
PHP函数引用返回的实例详解
2016/09/11 PHP
在IE模态窗口中自由查看HTML源码的方法
2007/03/08 Javascript
一个简单的jQuery插件ajaxfileupload.js实现ajax上传文件例子
2014/06/26 Javascript
AngularJS入门知识之MVW类框架的编程思想探讨
2014/12/08 Javascript
js中遍历对象的属性和值的方法
2016/07/27 Javascript
bootstrap datepicker 与bootstrapValidator同时使用时选择日期后无法正常触发校验的解决思路
2016/09/28 Javascript
jQuery页面弹出框实现文件上传
2017/02/09 Javascript
浅谈jQuery的bind和unbind事件(绑定和解绑事件)
2017/03/02 Javascript
JS实现的按钮点击颜色切换功能示例
2017/10/19 Javascript
10个在JavaScript开发中常遇到的BUG
2017/12/18 Javascript
解决Angular.js中使用Swiper插件不能滑动的问题
2018/02/26 Javascript
详解angular2.x创建项目入门指令
2018/10/11 Javascript
socket io与vue-cli的结合使用的示例代码
2018/11/01 Javascript
CountUp.js数字滚动插件使用方法详解
2019/10/17 Javascript
JavaScript自定义超时API代码实例
2020/04/30 Javascript
解决vue.js中settimeout遇到的问题(时间参数短效果不稳定)
2020/07/21 Javascript
VUE动态生成word的实现
2020/07/26 Javascript
一文秒懂nodejs中的异步编程
2021/01/28 NodeJs
python3简单实现微信爬虫
2015/04/09 Python
Python读取文件内容的三种常用方式及效率比较
2017/10/07 Python
Python Web程序部署到Ubuntu服务器上的方法
2018/02/22 Python
Python实现字符串的逆序 C++字符串逆序算法
2020/05/28 Python
基于python进行桶排序与基数排序的总结
2018/05/29 Python
Python基于xlrd模块操作Excel的方法示例
2018/06/21 Python
Django框架获取form表单数据方式总结
2020/04/22 Python
Html5页面中的返回实现的方法
2018/02/26 HTML / CSS
公司投资建议书
2014/05/16 职场文书
汽车运用工程专业求职信
2014/06/18 职场文书
个人务虚会发言材料
2014/10/20 职场文书
党的群众路线教育实践活动心得体会范文
2014/11/05 职场文书
体育部部长竞选稿
2015/11/21 职场文书
2016清明节森林防火广播稿
2015/12/17 职场文书
python基于tkinter制作m3u8视频下载工具
2021/04/24 Python
Spring Boot 底层原理基础深度解析
2022/04/03 Java/Android