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

Метод setName

Метод setName класса Command задаёт имя консольной команды. Первым параметром передаётся строка с именем команды. Именно по этому имени команда вызывается из терминала через php bin/console. Метод возвращает объект самой команды, что позволяет выстраивать цепочку вызовов.

Синтаксис

public function setName(string $name): static

Пример

Давайте создадим команду и зададим ей имя через метод setName:

<?php namespace AppCommand; use SymfonyComponentConsoleCommandCommand; use SymfonyComponentConsoleInputInputInterface; use SymfonyComponentConsoleOutputOutputInterface; class ArticleCommand extends Command { protected function configure(): void { $this->setName('app:article'); } protected function execute(InputInterface $input, OutputInterface $output): int { $output->writeln('hello'); return Command::SUCCESS; } } ?>

Теперь команду можно вызвать из терминала:

php bin/console app:article

Результат выполнения команды:

hello

Пример

Метод setName возвращает объект команды, поэтому имя можно задать цепочкой вместе с другими настройками:

<?php namespace AppCommand; use SymfonyComponentConsoleCommandCommand; use SymfonyComponentConsoleInputInputInterface; use SymfonyComponentConsoleOutputOutputInterface; class UserCommand extends Command { protected function configure(): void { $this ->setName('app:user') ->setDescription('User command'); } protected function execute(InputInterface $input, OutputInterface $output): int { $output->writeln('user'); return Command::SUCCESS; } } ?>

Результат выполнения команды:

php bin/console app:user
user

Пример

Имя команды может содержать пространство имён, разделённое двоеточием. Давайте зададим имя 'app:article:show':

<?php namespace AppCommand; use SymfonyComponentConsoleCommandCommand; use SymfonyComponentConsoleInputInputInterface; use SymfonyComponentConsoleOutputOutputInterface; class ArticleShowCommand extends Command { protected function configure(): void { $this->setName('app:article:show'); } protected function execute(InputInterface $input, OutputInterface $output): int { $output->writeln('article'); return Command::SUCCESS; } } ?>

Результат выполнения команды:

php bin/console app:article:show
article

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

  • класс Command,
    который является базой для всех консольных команд
  • метод configure,
    который настраивает команду
  • метод setDescription,
    который задаёт описание команды
  • метод execute,
    который содержит логику выполнения команды
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить