Константа FAILURE
Константа FAILURE принадлежит классу Command
и хранит целочисленный код возврата, который сигнализирует
об ошибке выполнения команды. Её значение равно 1.
Метод execute возвращает эту константу, когда команда
завершилась неуспешно, и Symfony выставляет соответствующий
код завершения процесса.
Код возврата используется в терминале для проверки результата
работы команды. Нулевой код означает успех, а любое ненулевое
значение трактуется как ошибка. Константа FAILURE
задаёт именно такое неуспешное значение.
Синтаксис
Command::FAILURE
Пример
Давайте создадим команду, которая возвращает FAILURE
при пустом значении аргумента:
<?php
namespace AppCommand;
use SymfonyComponentConsoleCommandCommand;
use SymfonyComponentConsoleInputInputInterface;
use SymfonyComponentConsoleOutputOutputInterface;
class ArticleCommand extends Command
{
protected static $defaultName = 'app:article';
protected function configure(): void
{
$this->addArgument('name');
}
protected function execute(InputInterface $input, OutputInterface $output): int
{
$name = $input->getArgument('name');
if (empty($name)) {
$output->writeln('name is empty');
return Command::FAILURE;
}
$output->writeln('hello ' . $name);
return Command::SUCCESS;
}
}
?>
Пример
Запустим команду без аргумента и получим код возврата 1:
php bin/console app:article
Результат выполнения команды:
name is empty
Проверим код завершения процесса:
echo $?
Результат выполнения кода:
1
Пример
Запустим команду с аргументом и получим код возврата 0:
php bin/console app:article abcde
Результат выполнения команды:
hello abcde
Проверим код завершения процесса:
echo $?
Результат выполнения кода:
0