РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
1311 of 1361 menu

Метод getOptions класса Input

Метод getOptions класса Input возвращает массив всех опций, которые были переданы команде при запуске. Метод не принимает параметров и возвращает ассоциативный массив, где ключами являются имена опций, а значениями - их значения. Если опция не была передана, в массиве будет значение по умолчанию или null.

Синтаксис

public function getOptions(): array

Пример

Давайте получим все опции, переданные команде:

<?php namespace App\Command; use Symfony\Component\Console\Command\Command; use Symfony\Component\Console\Input\InputInterface; use Symfony\Component\Console\Input\InputOption; use Symfony\Component\Console\Output\OutputInterface; class ArticleCommand extends Command { protected static $defaultName = 'app:article'; protected function configure(): void { $this ->addOption('name', null, InputOption::VALUE_REQUIRED) ->addOption('count', null, InputOption::VALUE_OPTIONAL, '', 1) ->addOption('active', null, InputOption::VALUE_NONE); } protected function execute(InputInterface $input, OutputInterface $output): int { $res = $input->getOptions(); $output->writeln(json_encode($res)); return Command::SUCCESS; } } ?>

Результат выполнения команды php bin/console app:article --name=abcde --active:

{"name":"abcde","count":1,"active":true}

Пример

Давайте проверим, какие значения вернутся, если опции не переданы:

<?php namespace App\Command; use Symfony\Component\Console\Command\Command; use Symfony\Component\Console\Input\InputInterface; use Symfony\Component\Console\Input\InputOption; use Symfony\Component\Console\Output\OutputInterface; class ArticleCommand extends Command { protected static $defaultName = 'app:article'; protected function configure(): void { $this ->addOption('name', null, InputOption::VALUE_REQUIRED) ->addOption('count', null, InputOption::VALUE_OPTIONAL, '', 1) ->addOption('active', null, InputOption::VALUE_NONE); } protected function execute(InputInterface $input, OutputInterface $output): int { $res = $input->getOptions(); $output->writeln(json_encode($res)); return Command::SUCCESS; } } ?>

Результат выполнения команды php bin/console app:article:

{"name":null,"count":1,"active":false}

Как видно из результата, опция name без значения по умолчанию вернула null, опция count вернула значение по умолчанию 1, а флаг active - false.

Смотрите также

  • класс Input,
    который представляет входные данные команды
  • метод getOption,
    который возвращает значение конкретной опции
  • метод getArguments,
    который возвращает все аргументы команды
  • метод hasOption,
    который проверяет наличие опции
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить