Input
abstract class Input implements InputInterface, StreamableInputInterface
Input is the base class for all concrete Input classes.
Three concrete classes are provided by default:
ArgvInput
: The input comes from the CLI arguments (argv)StringInput
: The input is provided as a stringArrayInput
: The input is provided as an array
Properties
protected | $definition | ||
protected | $stream | ||
protected | $options | ||
protected | $arguments | ||
protected | $interactive |
Methods
Binds the current Input instance with the given arguments and options.
Processes command line arguments.
Validates the input.
Is this input means interactive?
Sets the input interactivity.
Returns all the given arguments merged with the default values.
Returns the argument value for a given argument name.
Sets an argument value by name.
Returns true if an InputArgument object exists by name or position.
Returns all the given options merged with the default values.
Returns the option value for a given option name.
Sets an option value by name.
Returns true if an InputOption object exists by name.
Escapes a token through escapeshellarg if it contains unsafe chars.
Sets the input stream to read from when interacting with the user.
Returns the input stream.
Details
bind(InputDefinition $definition)
Binds the current Input instance with the given arguments and options.
string|string[]|null
getArgument(string $name)
Returns the argument value for a given argument name.
bool
hasArgument(string|int $name)
Returns true if an InputArgument object exists by name or position.
string
escapeToken(string $token)
Escapes a token through escapeshellarg if it contains unsafe chars.