wjzijderveld / console-input-resolver
用于询问缺少的选项和参数的库
0.2.0
2014-11-30 14:38 UTC
Requires
- symfony/console: ~2.5
Requires (Dev)
- phpspec/phpspec: ~2.1@dev
This package is not auto-updated.
Last update: 2024-09-24 02:04:04 UTC
README
这是一个简单的Symfony Console库。
它允许在未提供时向用户询问选项,这样您就可以既在交互式命令中,也在bash单行命令中使用此命令。
安装
composer require wjzijderveld/console-input-resolver 1.*@dev
用法
class GenerateCommand extends Command { private $inputResolver; public function __construct(Resolver $inputResolver) { parent::__construct(); $this->inputResolver = $inputResolver; } public function configure() { $this->setName('generate'); $this ->addArgument('class', InputArgument::OPTIONAL, 'The name of the class to generate') ->addOption('namespace', null, InputOption::VALUE_REQUIRED, 'The namespace to generate the class in'); } public function execut(InputInterface $input, OutputInterface $output) { // values will now contain values for namespace and class // for each option or argument that is not given when running this command // it will interactivily ask for a value $values = $this->inputResolver->resolveInputDefinition($this->getDefinition(), array('namespace', 'class')); var_dump($values); } }
示例输出
$ ./console generate --namespace Acme > The name of the class to generate: Foo > array(2) { 'namespace' => string(4) "Acme" 'class' => string(3) "Foo" }