yii2的Console定时任务建立

Yii2的定时任务能够有两种写法,原理都是经过服务器的定时任务去调用php

1.经过调用指定的URL访问 就至关于在浏览器中访问linux

2.经过console调用apache

下面咱们就来讲说Console 是如何实现定时任务的浏览器

1、首先在建立Controlle 并继承 yii\console\Controller;
<? php
namespace console\controllers;
use yii\console\Controller;
class TestController extends Controller {
public function actionIndex()
{
echo "hello world";
}
}
 
 
2、用命令行cmd测试是否成功
(必定要看好路径去执行   yii  这个文件              必定要写绝对路径)
 /你的文件夹路径/yii      你的文件夹路径/console/test(控制器)/index(方法)
 
下例为  在console文件夹下执行控制器和方法    
 
 
 
 
3、设置定时任务

linux下,运行crontab -e服务器

30 21 * * * /usr/local/php/bin/php /your_project_path/yii test/test

上面的例子表示每晚的21:30执行上面的定时程序yii

下面是定时任务设置的一些基本介绍测试

基本格式 :spa

* * * * * command.net

分 时 日 月 周 命令命令行

第1列表示分钟1~59 每分钟用*或者 */1表示

第2列表示小时1~23(0表示0点)

第3列表示日期1~31

第4列表示月份1~12

第5列标识号星期0~6(0表示星期天)

第6列要运行的命令

crontab文件的一些例子:

30 21 * * * /usr/local/etc/rc.d/lighttpd restart #上面的例子表示每晚的21:30重启apache。

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

10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart #上面的例子表示每周6、周日的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

相关文章
相关标签/搜索