因为业务功能需求 需要设置定时任务从A系统中获取数据。YII2.0已经提供了该功能方法。实现如下:
我用的是YII2.0的高级模板 已经自己带了console文件夹
在console文件夹的constrollers目录下创建TestController
namespace console\controllers;
use yii\console\Controller;
class TestController extends Controller{
public function actionIndex(){
$file=fopen('D:\Wamp\www\qdyy\common\test.txt','a+');
fwrite($file,date('Y-m-d h:i:s')."\r\n");
fclose($file);
}
public function actionGetdata($name){
echo 'get data from u8 '.$name;
}
}
这里可以像其他控制器一样 添加action方法来实现功能。
命名空间一定要是
namespace console\controllers;
继承的控制器
use yii\console\Controller;
创建完成后可以使用在命令行下 使用yii test来测试是否正常运行。默认执行Index方法。
带参数的方法为:yii test getdata [–name=”hello”] 注意:getdata方法名后面一定要加空格 再跟参数
测试成功以后 就可以创建windows的任务了
具体任务如何创建 这里就不一一截图了 可以参考
http://blog.csdn.net/wangyuchun_799/article/details/50204507
我设置的一分钟一次 为了方便测试 所以间隔时间短 运行后的效果