Метод caution
Метод caution класса SymfonyStyle выводит предупреждающее сообщение в консоль. Сообщение оформляется в виде блока с жёлтым фоном и префиксом [CAUTION]. Метод принимает первым параметром текст сообщения, а вторым - необязательный флаг $prefix, который управляет отображением префикса. Возвращает экземпляр SymfonyStyle для цепочки вызовов.
Синтаксис
public function caution(string|array $message, bool $prefix = true): self
Пример
Давайте выведем предупреждение в консоль из команды Symfony:
<?php
namespace App\Command;
use Symfony\Component\Console\Attribute\AsCommand;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
use Symfony\Component\Console\Style\SymfonyStyle;
#[AsCommand(name: 'app:article')]
class ArticleCommand extends Command
{
protected function execute(InputInterface $input, OutputInterface $output): int
{
$io = new SymfonyStyle($input, $output);
$io->caution('article not found');
return Command::SUCCESS;
}
}
?>
Результат выполнения команды php bin/console app:article:
[CAUTION] article not found
Пример
Давайте выведем предупреждение без префикса, передав вторым параметром false:
<?php
namespace App\Command;
use Symfony\Component\Console\Attribute\AsCommand;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
use Symfony\Component\Console\Style\SymfonyStyle;
#[AsCommand(name: 'app:article')]
class ArticleCommand extends Command
{
protected function execute(InputInterface $input, OutputInterface $output): int
{
$io = new SymfonyStyle($input, $output);
$io->caution('user hello', false);
return Command::SUCCESS;
}
}
?>
Результат выполнения команды php bin/console app:article:
user hello
Пример
Давайте выведем несколько предупреждений подряд, используя массив строк:
<?php
namespace App\Command;
use Symfony\Component\Console\Attribute\AsCommand;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
use Symfony\Component\Console\Style\SymfonyStyle;
#[AsCommand(name: 'app:article')]
class ArticleCommand extends Command
{
protected function execute(InputInterface $input, OutputInterface $output): int
{
$io = new SymfonyStyle($input, $output);
$io->caution(['abcde', 'article', 'user']);
return Command::SUCCESS;
}
}
?>
Результат выполнения команды php bin/console app:article:
[CAUTION] abcde
[CAUTION] article
[CAUTION] user
Смотрите также
-
класс
SymfonyStyle,
который предоставляет методы для красивого вывода в консоль -
метод
warning,
который выводит предупреждение с красным фоном -
метод
note,
который выводит заметку с синим фоном -
метод
error,
который выводит сообщение об ошибке