Зміна команди за замовчуванням
Дата оновлення перекладу 2025-08-05
Зміна команди за замовчуванням
Компонент Console завжди запускатиме ListCommand, якщо не передано ніякої назви
команди. Для того, щоб змінити команду за замовчуванням, вам просто потрібно передати
назву команди методу setDefaultCommand():
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
namespace Acme\Console\Command;
use Symfony\Component\Console\Attribute\AsCommand;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Style\SymfonyStyle;
#[AsCommand(name: 'hello:world', description: 'Outputs "Hello World"')]
class HelloWorldCommand extends Command
{
public function __invoke(SymfonyStyle $io): int
{
$io->writeln('Hello World');
return Command::SUCCESS;
}
}
Запуск додатку та зміна команди за замовчуванням:
1 2 3 4 5 6 7 8 9
// application.php
use Acme\Console\Command\HelloWorldCommand;
use Symfony\Component\Console\Application;
$command = new HelloWorldCommand();
$application = new Application();
$application->add($command);
$application->setDefaultCommand($command->getName());
$application->run();
Простестуйте нову команду консолі за замовчуванням, виконавши наступне:
1
$ php application.php
Це відобразить наступний командний рядок:
1
Hello World
Warning
Ця функція має обмеження: ви не можете передати ніякий аргумент або опцію команді за замовчуванням, так як вони ігноруватимуться.