ArgvInput
extends Input
in package
ArgvInput represents an input coming from the CLI arguments.
Usage:
$input = new ArgvInput();
By default, the $_SERVER['argv']
array is used for the input values.
This can be overridden by explicitly passing the input values in the constructor:
$input = new ArgvInput($_SERVER['argv']);
If you pass it yourself, don't forget that the first element of the array is the name of the running application.
When passing an argument to the constructor, be sure that it respects
the same rules as the argv one. It's almost always better to use the
StringInput
when you want to provide your own input.
Tags
Table of Contents
- $arguments : mixed
- $definition : mixed
- $interactive : mixed
- $options : mixed
- $stream : mixed
- $parsed : mixed
- $tokens : mixed
- __construct() : mixed
- __toString() : string
- Returns a stringified representation of the args passed to the command.
- bind() : mixed
- Binds the current Input instance with the given arguments and options.
- escapeToken() : string
- Escapes a token through escapeshellarg if it contains unsafe chars.
- getArgument() : string|array<string|int, string>|null
- Returns the argument value for a given argument name.
- getArguments() : array<string|int, mixed>
- Returns all the given arguments merged with the default values.
- getFirstArgument() : mixed
- {@inheritdoc}
- getOption() : string|array<string|int, string>|bool|null
- Returns the option value for a given option name.
- getOptions() : array<string|int, mixed>
- Returns all the given options merged with the default values.
- getParameterOption() : mixed
- {@inheritdoc}
- getStream() : resource|null
- Returns the input stream.
- hasArgument() : bool
- Returns true if an InputArgument object exists by name or position.
- hasOption() : bool
- Returns true if an InputOption object exists by name.
- hasParameterOption() : mixed
- {@inheritdoc}
- isInteractive() : bool
- Is this input means interactive?
- setArgument() : mixed
- Sets an argument value by name.
- setInteractive() : mixed
- Sets the input interactivity.
- setOption() : mixed
- Sets an option value by name.
- setStream() : mixed
- Sets the input stream to read from when interacting with the user.
- validate() : mixed
- Validates the input.
- parse() : mixed
- Processes command line arguments.
- setTokens() : mixed
- addLongOption() : mixed
- Adds a long option value.
- addShortOption() : mixed
- Adds a short option value.
- parseArgument() : mixed
- Parses an argument.
- parseLongOption() : mixed
- Parses a long option.
- parseShortOption() : mixed
- Parses a short option.
- parseShortOptionSet() : mixed
- Parses a short option set.
Properties
$arguments
protected
mixed
$arguments
= []
$definition
protected
mixed
$definition
$interactive
protected
mixed
$interactive
= true
$options
protected
mixed
$options
= []
$stream
protected
mixed
$stream
$parsed
private
mixed
$parsed
$tokens
private
mixed
$tokens
Methods
__construct()
public
__construct([array<string|int, mixed> $argv = null ][, InputDefinition $definition = null ]) : mixed
Parameters
- $argv : array<string|int, mixed> = null
- $definition : InputDefinition = null
Return values
mixed —__toString()
Returns a stringified representation of the args passed to the command.
public
__toString() : string
Return values
string —bind()
Binds the current Input instance with the given arguments and options.
public
bind(InputDefinition $definition) : mixed
Parameters
- $definition : InputDefinition
Return values
mixed —escapeToken()
Escapes a token through escapeshellarg if it contains unsafe chars.
public
escapeToken(string $token) : string
Parameters
- $token : string
Return values
string —getArgument()
Returns the argument value for a given argument name.
public
getArgument(string $name) : string|array<string|int, string>|null
Parameters
- $name : string
Return values
string|array<string|int, string>|null —The argument value
getArguments()
Returns all the given arguments merged with the default values.
public
getArguments() : array<string|int, mixed>
Return values
array<string|int, mixed> —getFirstArgument()
{@inheritdoc}
public
getFirstArgument() : mixed
Return values
mixed —getOption()
Returns the option value for a given option name.
public
getOption(string $name) : string|array<string|int, string>|bool|null
Parameters
- $name : string
Return values
string|array<string|int, string>|bool|null —The option value
getOptions()
Returns all the given options merged with the default values.
public
getOptions() : array<string|int, mixed>
Return values
array<string|int, mixed> —getParameterOption()
{@inheritdoc}
public
getParameterOption(mixed $values[, mixed $default = false ][, bool $onlyParams = false ]) : mixed
Parameters
- $values : mixed
- $default : mixed = false
- $onlyParams : bool = false
Return values
mixed —getStream()
Returns the input stream.
public
getStream() : resource|null
Return values
resource|null —hasArgument()
Returns true if an InputArgument object exists by name or position.
public
hasArgument(mixed $name) : bool
Parameters
- $name : mixed
-
The InputArgument name or position
Return values
bool —true if the InputArgument object exists, false otherwise
hasOption()
Returns true if an InputOption object exists by name.
public
hasOption(string $name) : bool
Parameters
- $name : string
Return values
bool —true if the InputOption object exists, false otherwise
hasParameterOption()
{@inheritdoc}
public
hasParameterOption(mixed $values[, bool $onlyParams = false ]) : mixed
Parameters
- $values : mixed
- $onlyParams : bool = false
Return values
mixed —isInteractive()
Is this input means interactive?
public
isInteractive() : bool
Return values
bool —setArgument()
Sets an argument value by name.
public
setArgument(string $name, mixed $value) : mixed
Parameters
- $name : string
- $value : mixed
-
The argument value
Return values
mixed —setInteractive()
Sets the input interactivity.
public
setInteractive(bool $interactive) : mixed
Parameters
- $interactive : bool
Return values
mixed —setOption()
Sets an option value by name.
public
setOption(string $name, mixed $value) : mixed
Parameters
- $name : string
- $value : mixed
-
The option value
Return values
mixed —setStream()
Sets the input stream to read from when interacting with the user.
public
setStream(mixed $stream) : mixed
Parameters
- $stream : mixed
-
The input stream
Return values
mixed —validate()
Validates the input.
public
validate() : mixed
Return values
mixed —parse()
Processes command line arguments.
protected
parse() : mixed
Return values
mixed —setTokens()
protected
setTokens(array<string|int, mixed> $tokens) : mixed
Parameters
- $tokens : array<string|int, mixed>
Return values
mixed —addLongOption()
Adds a long option value.
private
addLongOption(string $name, mixed $value) : mixed
Parameters
- $name : string
- $value : mixed
Tags
Return values
mixed —addShortOption()
Adds a short option value.
private
addShortOption(string $shortcut, mixed $value) : mixed
Parameters
- $shortcut : string
- $value : mixed
Tags
Return values
mixed —parseArgument()
Parses an argument.
private
parseArgument(string $token) : mixed
Parameters
- $token : string
Tags
Return values
mixed —parseLongOption()
Parses a long option.
private
parseLongOption(string $token) : mixed
Parameters
- $token : string
Return values
mixed —parseShortOption()
Parses a short option.
private
parseShortOption(string $token) : mixed
Parameters
- $token : string
Return values
mixed —parseShortOptionSet()
Parses a short option set.
private
parseShortOptionSet(string $name) : mixed
Parameters
- $name : string