Класс CommandCollection
Коллекция команд.
Используется приложениями для указания своих команд консоли. CakePHP будет использовать сопоставленные команды для построения и отправки команд оболочки.
Краткое описание свойств
- $commands protected
arrayСписок команд
Краткое описание методов
-
__construct() public
Конструктор
-
add() public
Добавить команду в коллекцию
-
addMany() public
Добавить сразу несколько команд.
-
autoDiscover() public
Автоматически обнаружить команды оболочки в CakePHP, приложении и всех плагинах.
-
count() public
Реализация Countable.
-
discoverPlugin() public
Автоматическое обнаружение оболочки и команд из указанного плагина.
-
get() public
Получить целевой объект для команды.
-
getIterator() public
Реализация IteratorAggregate.
-
has() public
Проверить, существует ли указанная команда в коллекции.
-
keys() public
Получить список доступных имён команд.
-
remove() public
Удалить команду из коллекции, если она существует.
-
resolveNames() protected
Разрешить имена на основе существующих команд
Подробное описание методов
__construct() public
__construct(array $commands = [])
Конструктор
Параметры
-
array$commands optional Карта команд для добавления в коллекцию.
add() public
add(string $name, stringCake\Console\ShellCake\Console\CommandInterface $command): $this
Добавить команду в коллекцию
Параметры
-
string$name Имя команды, которую вы хотите сопоставить.
-
stringCake\Console\ShellCake\Console\CommandInterface$command Команда для сопоставления. Может быть FQCN, экземпляром Shell или экземпляром CommandInterface.
Возвращает
$thisИсключения
InvalidArgumentExceptionaddMany() public
addMany(array $commands): $this
Добавить сразу несколько команд.
Параметры
-
array$commands Карта имён команд => классы/экземпляры команд.
Возвращает
$thisСм. также
autoDiscover() public
autoDiscover(): string[]
Автоматически обнаружить команды оболочки в CakePHP, приложении и всех плагинах.
Команды будут найдены с помощью соглашений файловой системы. Команды обнаруживаются в следующем порядке:
- Команды, предоставляемые CakePHP
- Команды приложения
Команды, определённые в приложении, будут перезаписывать команды с тем же именем, которые предоставляет CakePHP.
Возвращает
string[]count() public
count(): int
Реализация Countable.
Получить количество команд в коллекции.
Возвращает
intdiscoverPlugin() public
discoverPlugin(string $plugin): string[]
Автоматическое обнаружение оболочки и команд из указанного плагина.
Обнаруженные команды будут иметь свои имена, дубликаты которых будут удалены с существующими командами в коллекции. Если команда уже определена в коллекции и обнаружена в плагине, будет возвращено только полное имя (plugin.command).
Параметры
-
string$plugin Плагин для сканирования.
Возвращает
string[]get() public
get(string $name): stringCake\Console\ShellCake\Console\CommandInterface
Получить целевой объект для команды.
Параметры
-
string$name Именованная оболочка.
Возвращает
stringCake\Console\ShellCake\Console\CommandInterfaceИсключения
InvalidArgumentExceptionпри попытке получить неизвестные команды.
getIterator() public
getIterator(): Traversable
Реализация IteratorAggregate.
Возвращает
Traversablehas() public
has(string $name): bool
Проверить, существует ли указанная команда в коллекции.
Параметры
-
string$name Именованная оболочка.
Возвращает
boolkeys() public
keys(): string[]
Получить список доступных имён команд.
Возвращает
string[]remove() public
remove(string $name): $this
Удалить команду из коллекции, если она существует.
Параметры
-
string$name Именованная оболочка.
Возвращает
$thisresolveNames() protected
resolveNames(array $input): string[]
Разрешить имена на основе существующих команд
Параметры
-
array$input Результаты операции CommandScanner.
Возвращает
string[]Подробное описание свойств
$commands protected
Список команд
Тип
array
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.2/class-Cake.Console.CommandCollection.html