ThinkPHP 5引入了命令行模式,试了一下确实还是不错的,坑是官方文档写得实在太简单了,来总结一下。
1、首先你得去下载一个完整版的ThinkPHP 5,解压到你希望的位置
2、新建脚本入口文件application\home\command\Hello.phpnamespace 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完全开发手册
本博客所有文章如无特别注明均为原创。