查看原文
进入 application\command.php 添加执行方法命名空间
<?php
return [
'app\command\controller\WorkmanTask'
];
?>
创建文件
<?php
namespace app\command\controller;
use think\console\input\Option;
use think\console\command;
use think\console\Input;
use think\console\Output;
use think\console\input\Argument;
class WorkmanTask extends command{
protected function configure(){
//设置参数
$this->addArgument('email', Argument::REQUIRED); //必传参数
$this->addArgument('mobile', Argument::OPTIONAL);//可选参数
//选项定义
$this->addOption('message', 'm', Option::VALUE_REQUIRED, '描述'); //选项值必填
$this->addOption('status', 's', Option::VALUE_OPTIONAL, '描述'); //选项值选填
$this->setName('test')->setDescription('启动了');
}
public function execute(Input $input, Output $output){
$email = $input->getArgument('email');
$mobile = $input->getArgument('mobile');
$message = $input->getOption('message');
$status = $input->getOption('status');
if(!$email) $email = 'false';
if(!$mobile) $mobile = 'false';
if(!$message) $message = 'false';
if(!$status) $status = 'false';
echo $email;
echo '\n';
echo $mobile;
echo '\n';
echo $message;
echo '\n';
echo $status;
}
}
?>
输入命令
php think test -m email -s status message 10086
//输出值
$message = 'message';
$mobile = '10086';
$email = 'email';
$status = 'status';