Метод setHelp класса Command
Метод setHelp класса Command устанавливает
текст подробной справки для консольной команды.
Этот текст показывается пользователю, когда он запускает
команду с опцией --help. Метод принимает один
параметр - строку с текстом справки. Обычно вызов
setHelp размещают внутри метода configure,
где настраиваются имя, описание и аргументы команды.
Синтаксис
setHelp(string $help): static
Пример
Давайте создадим команду и зададим ей текст справки:
<?php
namespace AppCommand;
use SymfonyComponentConsoleCommandCommand;
use SymfonyComponentConsoleInputInputInterface;
use SymfonyComponentConsoleOutputOutputInterface;
class ArticleCommand extends Command
{
protected function configure(): void
{
$this
->setName('article:show')
->setDescription('Shows an article')
->setHelp('This command allows you to display an article by its id.');
}
protected function execute(InputInterface $input, OutputInterface $output): int
{
$output->writeln('article');
return Command::SUCCESS;
}
}
?>
Теперь при запуске команды с опцией --help выведется
заданный текст справки:
<+terminal+>
php bin/console article:show --help
<-terminal+>
Результат выполнения команды:
Description:
Shows an article
Usage:
article:show
Help:
This command allows you to display an article by its id.
Пример
Текст справки может быть многострочным. Давайте передадим несколько строк через массив и объединим их:
<?php
namespace AppCommand;
use SymfonyComponentConsoleCommandCommand;
use SymfonyComponentConsoleInputInputInterface;
use SymfonyComponentConsoleOutputOutputInterface;
class UserCommand extends Command
{
protected function configure(): void
{
$help = [
'This command works with users.',
'',
'You can pass a user name as an argument:',
' php bin/console user:show abcde',
];
$this
->setName('user:show')
->setDescription('Shows a user')
->setHelp(implode(PHP_EOL, $help));
}
protected function execute(InputInterface $input, OutputInterface $output): int
{
$output->writeln('user');
return Command::SUCCESS;
}
}
?>
Результат выполнения команды для адреса user:show --help:
Help:
This command works with users.
You can pass a user name as an argument:
php bin/console user:show abcde
Смотрите также
-
класс
Command,
который является базой для всех консольных команд -
метод
configure,
в котором настраивается команда -
метод
setDescription,
который задаёт краткое описание команды -
метод
execute,
который содержит логику выполнения команды