我正在编写我的第一个symfony控制台应用程序,我想问一个关于控制台输出的问题。
当我在控制台中运行新的CLI应用程序时,如:./testapp
,然后我得到以下输出:
Usage:
command [options] [arguments]
Options:
--help (-h) Display this help message
--quiet (-q) Do not output any message
--verbose (-v|vv|vvv) Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
--version (-V) Display this application version
--ansi Force ANSI output
--no-ansi Disable ANSI output
--no-interaction (-n) Do not ask any interactive question
Available commands:
help Displays help for a command
list Lists commands
有没有办法删除此内容的显示?我只想要"可用命令"可见。是否可以在此显示中创建自己的组?
答案 0 :(得分:1)
从Symfony 2.5开始,您可以更改默认命令(未指定命令名时执行的命令)。有关详细信息,请参阅:http://symfony.com/doc/current/components/console/changing_default_command.html
当没有传递命令名时,Console组件将始终运行ListCommand。要更改默认命令,您只需将命令名称传递给
setDefaultCommand
方法。
答案 1 :(得分:0)
(Symfony控制台4.1)
可以删除默认选项:
$options = $app->getDefinition()->getOptions();
unset($options['ansi']);
unset($options['no-interaction']);
unset($options['verbose']);
unset($options['help']);
unset($options['quiet']);
unset($options['version']);
unset($options['no-ansi']);
$app->getDefinition()->setOptions($options);
或者只是:
$app->getDefinition()->setOptions();
选项组将不会显示在list
命令中。
尽管我不知道这是否有不良后果。