php脚本自定义指令,thinkphp如何自定义指令

通过指令方式来快速创建

php think make:command Test

#如果要增加目录

php think make:command /aaa/Test

默认就在app目录下生成一个command目录,并且生成 Test.php

namespace app\command;

use think\console\Command;

use think\console\Input;

use think\console\Output;

class Test extends Command

{

protected function configure()

{

// 指令配置

$this->setName('test');

// 设置参数

$this->addArgument('name', Argument::OPTIONAL, "your name");

$this->addOption('city', null, Option::VALUE_REQUIRED, 'city name')

}

protected function execute(Input $input, Output $output)

{

$aaa = trim($input->getArgument('aaa'));

var_dump($aaa);

$bbb = trim($input->getArgument('bbb'));

var_dump($bbb );

if ($input->hasOption('ccc')) {

$ccc = $input->getOption('ccc');

var_dump($ccc);

}

// 指令输出

$output->writeln("test," . $name . '!' . $city);

}

}

自己创建文件的方式

第一步,创建一个自定义命令类文件,可以自定义位置,新建application/common/command/Test.php,格式看上面代码

第二步,配置application/command.php文件

return [

'app\common\command\Test',

#或者 指令名 =》完整的类名 V5.1.24+版本才支持

'test' => 'app\common\command\Test',

];

这个文件定义了一个叫test的命令,并设置了一个aaa参数 bbb参数和一个ccc选项。

可以直接执行打印指令

php think test #打印出 test

php think test 11 22 --ccc 123

你可能感兴趣的:(php脚本自定义指令)