Метод isQuiet класса Output
Метод isQuiet класса Output возвращает true,
если вывод находится в тихом режиме (quiet mode), и false в противном случае.
Тихий режим включается флагом -q или --quiet
при запуске консольной команды. В этом режиме подавляется весь
стандартный вывод, поэтому метод удобно использовать для
проверки необходимости выводить сообщения.
Синтаксис
public function isQuiet(): bool
Пример
Давайте проверим, находится ли вывод в тихом режиме:
<?php
namespace AppCommand;
use SymfonyComponentConsoleCommandCommand;
use SymfonyComponentConsoleInputInputInterface;
use SymfonyComponentConsoleOutputOutputInterface;
class ArticleCommand extends Command
{
protected static $defaultName = 'app:article';
protected function execute(InputInterface $input, OutputInterface $output): int
{
if ($output->isQuiet()) {
return Command::SUCCESS;
}
$output->writeln('hello');
return Command::SUCCESS;
}
}
?>
Результат выполнения команды без флага -q:
php bin/console app:article
hello
Результат выполнения команды с флагом -q:
php bin/console app:article -q
Пример
Давайте выведем разные сообщения в зависимости от режима:
<?php
namespace AppCommand;
use SymfonyComponentConsoleCommandCommand;
use SymfonyComponentConsoleInputInputInterface;
use SymfonyComponentConsoleOutputOutputInterface;
class ArticleCommand extends Command
{
protected static $defaultName = 'app:article';
protected function execute(InputInterface $input, OutputInterface $output): int
{
if ($output->isQuiet()) {
return Command::SUCCESS;
}
$output->writeln('article');
return Command::SUCCESS;
}
}
?>
Результат выполнения команды:
php bin/console app:article
article
Смотрите также
-
класс
Output,
который отвечает за вывод в консоли -
метод
isVerbose,
который проверяет подробный режим вывода -
метод
isDebug,
который проверяет режим отладки -
метод
setVerbosity,
который задаёт уровень детализации вывода