【ThinkPHP5】Console命令行执行计划任务



    ThinkPHP 5引入了命令行模式,试了一下确实还是不错的,坑是官方文档写得实在太简单了,来总结一下。

    1、首先你得去下载一个完整版的ThinkPHP 5,解压到你希望的位置

    2、新建脚本入口文件application\home\command\Hello.php

    namespace app\home\command;  
      
    use think\console\Command;  
    use think\console\Input;  
    use think\console\Output;  
      
    class Hello extends Command  
    {  
        protected function configure()  
        {  
            // 这里的hello就是命令行think后面的参数
            $this->setName('hello')->setDescription('Command say hello');  
        }  
      
        protected function execute(Input $input, Output $output)  
        {  
            $output->writeln("Hello, world!");  
        }  
    }


    3、修改配置文件application/command.php,条目为刚才增加的脚本入口类的完整命名空间

    return [  
        'app\home\command\Hello'  
    ];

    4、在命令中运行php think hello可以执行上面的Hello脚本类;运行php think list可以看到所有可运行的命令,包括上面添加的hello

    5、如果是通过计划任务的方式执行的话,最好修改一下入口的think如下以保证更好的文件路径兼容

    //修改以下这行为下面的第二行
    //require './thinkphp/console.php';
    require dirname(__FILE__) . '/thinkphp/console.php';

    通过以上的参数关系讲解相信大家对于写脚本的过程会更加清晰。更多的使用还是参考ThinkPHP5.0完全开发手册



    本博客所有文章如无特别注明均为原创。
    复制或转载请以超链接形式注明转自枫芸志,原文地址《【ThinkPHP5】Console命令行执行计划任务
    标签:
    分享:

还没有人抢沙发呢~

无觅相关文章插件,快速提升流量