YII2.0 php 定时任务使用

因为业务功能需求 需要设置定时任务从A系统中获取数据。YII2.0已经提供了该功能方法。实现如下:
我用的是YII2.0的高级模板 已经自己带了console文件夹

在console文件夹的constrollers目录下创建TestController
  • 1
  • 2
  • 3
  • 4
  • 5
    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;
        }
    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

这里可以像其他控制器一样 添加action方法来实现功能。

命名空间一定要是
namespace console\controllers;
继承的控制器
 use yii\console\Controller;
  • 1
  • 2
  • 3
  • 4

创建完成后可以使用在命令行下 使用yii test来测试是否正常运行。默认执行Index方法。 
带参数的方法为:yii test getdata [–name=”hello”] 注意:getdata方法名后面一定要加空格 再跟参数 
测试成功以后 就可以创建windows的任务了 
具体任务如何创建 这里就不一一截图了 可以参考 
http://blog.csdn.net/wangyuchun_799/article/details/50204507

我设置的一分钟一次 为了方便测试 所以间隔时间短 运行后的效果 
这里写图片描述


猜你喜欢

转载自blog.csdn.net/qq_39376608/article/details/80376172