ArgvInput
class ArgvInput extends Input
ArgvInput представляет входные данные, поступающие из аргументов командной строки.
Использование:
$input = new ArgvInput();
По умолчанию, массив $_SERVER['argv'] используется для значений входных данных.
Это можно переопределить, явно передав значения входных данных в конструктор:
$input = new ArgvInput($_SERVER['argv']);
Если вы передаете их самостоятельно, не забудьте, что первый элемент массива — это имя запускаемого приложения.
При передаче аргумента в конструктор, убедитесь, что он соблюдает те же правила, что и argv. Почти всегда лучше использовать StringInput, когда вы хотите предоставить собственные входные данные.
Свойства
| protected | $definition | из Input | |
| protected | $stream | из Input | |
| protected | $options | из Input | |
| protected | $arguments | из Input | |
| protected | $interactive | из Input |
Методы
| __construct(array $argv = null, InputDefinition $definition = null) | ||
| bind(InputDefinition $definition) Связывает текущий экземпляр Input с заданными аргументами и опциями. | из Input | |
| parse() Обрабатывает аргументы командной строки. | ||
| validate() Проверяет входные данные. | из Input | |
| bool | isInteractive() Являются ли эти входные данные интерактивными? | из Input |
| setInteractive(bool $interactive) Устанавливает интерактивность входных данных. | из Input | |
| array | getArguments() Возвращает все заданные аргументы, объединенные со значениями по умолчанию. | из Input |
| string|string[]|null | getArgument(string $name) Возвращает значение аргумента для заданного имени аргумента. | из Input |
| setArgument(string $name, string|string[]|null $value) Устанавливает значение аргумента по имени. | из Input | |
| bool | hasArgument(string|int $name) Возвращает true, если объект InputArgument существует по имени или позиции. | из Input |
| array | getOptions() Возвращает все заданные опции, объединенные со значениями по умолчанию. | из Input |
| string|string[]|bool|null | getOption(string $name) Возвращает значение опции для заданного имени опции. | из Input |
| setOption(string $name, string|string[]|bool|null $value) Устанавливает значение опции по имени. | из Input | |
| bool | hasOption(string $name) Возвращает true, если объект InputOption существует по имени. | из Input |
| string | escapeToken(string $token) Экранирует токен с помощью escapeshellarg, если он содержит небезопасные символы. | из Input |
| setStream(resource $stream) Устанавливает поток ввода для чтения при взаимодействии с пользователем. | из Input | |
| resource|null | getStream() Возвращает поток ввода. | из Input |
| setTokens(array $tokens) | ||
| string|null | getFirstArgument() Возвращает первый аргумент из исходных параметров (не обработанных). | |
| bool | hasParameterOption(string|array $values, bool $onlyParams = false) Возвращает true, если исходные параметры (не обработанные) содержат значение. | |
| mixed | getParameterOption(string|array $values, mixed $default = false, bool $onlyParams = false) Возвращает значение сырой опции (не обработанной). | |
| string | __toString() Возвращает строковое представление аргументов, переданных команде. |
Подробности
__construct(array $argv = null, InputDefinition $definition = null)
Параметры
| array | $argv | Массив параметров из командной строки (в формате argv) |
| InputDefinition | $definition |
bind(InputDefinition $definition)
Связывает текущий экземпляр Input с заданными аргументами и опциями.
Параметры
| InputDefinition | $definition |
Исключения
| RuntimeException |
protected parse()
Обрабатывает аргументы командной строки.
validate()
Проверяет входные данные.
Исключения
| RuntimeException | При недостаточном количестве аргументов |
bool isInteractive()
Являются ли эти входные данные интерактивными?
Значение возврата
| bool |
setInteractive(bool $interactive)
Устанавливает интерактивность входных данных.
Параметры
| bool | $interactive | Если входные данные должны быть интерактивными |
array getArguments()
Возвращает все заданные аргументы, объединенные со значениями по умолчанию.
Значение возврата
| array |
string|string[]|null getArgument(string $name)
Возвращает значение аргумента для заданного имени аргумента.
Параметры
| string | $name | Имя аргумента |
Значение возврата
| string|string[]|null | Значение аргумента |
Исключения
| InvalidArgumentException | Если указанного аргумента не существует |
setArgument(string $name, string|string[]|null $value)
Устанавливает значение аргумента по имени.
Параметры
| string | $name | Имя аргумента |
| string|string[]|null | $value | Значение аргумента |
Исключения
| InvalidArgumentException | Если указанного аргумента не существует |
bool hasArgument(string|int $name)
Возвращает true, если объект InputArgument существует по имени или позиции.
Параметры
| string|int | $name | Имя или позиция InputArgument |
Значение возврата
| bool | true, если объект InputArgument существует, иначе false |
array getOptions()
Возвращает все заданные опции, объединенные со значениями по умолчанию.
Значение возврата
| array |
string|string[]|bool|null getOption(string $name)
Возвращает значение опции для заданного имени опции.
Параметры
| string | $name | Имя опции |
Значение возврата
| string|string[]|bool|null | Значение опции |
Исключения
| InvalidArgumentException | Если указанной опции не существует |
setOption(string $name, string|string[]|bool|null $value)
Устанавливает значение опции по имени.
Параметры
| string | $name | Имя опции |
| string|string[]|bool|null | $value | Значение опции |
Исключения
| InvalidArgumentException | Если указанной опции не существует |
bool hasOption(string $name)
Возвращает true, если объект InputOption существует по имени.
Параметры
| string | $name | Имя InputOption |
Значение возврата
| bool | true, если объект InputOption существует, иначе false |
string escapeToken(string $token)
Экранирует токен с помощью escapeshellarg, если он содержит небезопасные символы.
Параметры
| string | $token |
Значение возврата
| string |
setStream(resource $stream)
Устанавливает входной поток для чтения при взаимодействии с пользователем.
Это преимущественно полезно для целей тестирования.
Параметры
| resource | $stream | Входной поток |
resource|null getStream()
Возвращает входной поток.
Значение возврата
| resource|null |
protected setTokens(array $tokens)
Параметры
| array | $tokens |
string|null getFirstArgument()
Возвращает первый аргумент из исходных параметров (не обработанных).
Значение возврата
| string|null | Значение первого аргумента или null в противном случае |
bool hasParameterOption(string|array $values, bool $onlyParams = false)
Возвращает true, если исходные параметры (не обработанные) содержат значение.
Этот метод используется для интроспекции входных параметров до их проверки. Следует использовать его с осторожностью. Возможно, не возвращает правильный результат для коротких опций, когда несколько флагов объединены в одной опции.
Параметры
| string|array | $values | Искомые значения в исходных параметрах (может быть массивом) |
| bool | $onlyParams | Проверять только реальные параметры, пропуская те, что следуют за сигналом окончания опций (--) |
Значение возврата
| bool | true, если значение содержится в исходных параметрах |
mixed getParameterOption(string|array $values, mixed $default = false, bool $onlyParams = false)
Возвращает значение исходной опции (не обработанной).
Этот метод используется для интроспекции входных параметров до их проверки. Следует использовать его с осторожностью. Возможно, не возвращает правильный результат для коротких опций, когда несколько флагов объединены в одной опции.
Параметры
| string|array | $values | Искомое(ые) значение(я) в исходных параметрах (может быть массивом) |
| mixed | $default | Значение по умолчанию, возвращаемое, если результат не найден |
| bool | $onlyParams | Проверять только реальные параметры, пропуская те, что следуют за сигналом окончания опций (--) |
Значение возврата
| mixed | Значение опции |
string __toString()
Возвращает строковое представление аргументов, переданных команде.
Значение возврата
| string |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
https://api.symfony.com/4.1/Symfony/Component/Console/Input/ArgvInput.html