Documentation

StringInput extends ArgvInput
in package

StringInput represents an input provided as a string.

Usage:

$input = new StringInput('foo --bar="foobar"');

Tags
author

Fabien Potencier fabien@symfony.com

Table of Contents

Constants

REGEX_QUOTED_STRING  = '(?:"([^"\\\\]*(?:\\\\.[^"\\\\]*)*)"|\'([^\'\\\\]*(?:\\\\.[^\'\\\\]*)*)\')'
REGEX_STRING  = '([^\s]+?)(?:\s|(?<!\\\\)"|(?<!\\\\)\'|$)'
REGEX_UNQUOTED_STRING  = '([^\s\\\\]+?)'

Properties

$arguments  : mixed
$definition  : mixed
$interactive  : mixed
$options  : mixed
$stream  : mixed
$parsed  : mixed
$tokens  : mixed

Methods

__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()  : mixed
Returns the argument value for a given argument name.
getArguments()  : array<string|int, string|bool|int|float|array<string|int, mixed>|null>
Returns all the given arguments merged with the default values.
getFirstArgument()  : string|null
Returns the first argument from the raw parameters (not parsed).
getOption()  : mixed
Returns the option value for a given option name.
getOptions()  : array<string|int, string|bool|int|float|array<string|int, mixed>|null>
Returns all the given options merged with the default values.
getParameterOption()  : mixed
Returns the value of a raw option (not parsed).
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()  : bool
Returns true if the raw parameters (not parsed) contain a value.
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.
tokenize()  : array<string|int, mixed>
Tokenizes a string.

Constants

REGEX_QUOTED_STRING

public mixed REGEX_QUOTED_STRING = '(?:"([^"\\\\]*(?:\\\\.[^"\\\\]*)*)"|\'([^\'\\\\]*(?:\\\\.[^\'\\\\]*)*)\')'

REGEX_STRING

public mixed REGEX_STRING = '([^\s]+?)(?:\s|(?<!\\\\)"|(?<!\\\\)\'|$)'

REGEX_UNQUOTED_STRING

public mixed REGEX_UNQUOTED_STRING = '([^\s\\\\]+?)'

Properties

$arguments

protected mixed $arguments = []

$definition

protected mixed $definition

$interactive

protected mixed $interactive = true

$options

protected mixed $options = []

$stream

protected mixed $stream

Methods

__construct()

public __construct(string $input) : mixed
Parameters
$input : string

A string representing the parameters from the CLI

__toString()

Returns a stringified representation of the args passed to the command.

public __toString() : string
Return values
string

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(mixed $name) : mixed
Parameters
$name : mixed

The argument name

getArguments()

Returns all the given arguments merged with the default values.

public getArguments() : array<string|int, string|bool|int|float|array<string|int, mixed>|null>
Return values
array<string|int, string|bool|int|float|array<string|int, mixed>|null>

getFirstArgument()

Returns the first argument from the raw parameters (not parsed).

public getFirstArgument() : string|null
Return values
string|null

The value of the first argument or null otherwise

getOption()

Returns the option value for a given option name.

public getOption(mixed $name) : mixed
Parameters
$name : mixed

The option name

getOptions()

Returns all the given options merged with the default values.

public getOptions() : array<string|int, string|bool|int|float|array<string|int, mixed>|null>
Return values
array<string|int, string|bool|int|float|array<string|int, mixed>|null>

getParameterOption()

Returns the value of a raw option (not parsed).

public getParameterOption(mixed $values[, mixed $default = false ][, mixed $onlyParams = false ]) : mixed
Parameters
$values : mixed

The value(s) to look for in the raw parameters (can be an array)

$default : mixed = false

The default value to return if no result is found

$onlyParams : mixed = false

Only check real parameters, skip those following an end of options (--) signal

Return values
mixed

The option value

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 argument name

Return values
bool

true if the InputArgument object exists, false otherwise

hasOption()

Returns true if an InputOption object exists by name.

public hasOption(mixed $name) : bool
Parameters
$name : mixed

The InputOption name

Return values
bool

true if the InputOption object exists, false otherwise

hasParameterOption()

Returns true if the raw parameters (not parsed) contain a value.

public hasParameterOption(mixed $values[, mixed $onlyParams = false ]) : bool
Parameters
$values : mixed

The values to look for in the raw parameters (can be an array)

$onlyParams : mixed = false

Only check real parameters, skip those following an end of options (--) signal

Return values
bool

true if the value is contained in the raw parameters

isInteractive()

Is this input means interactive?

public isInteractive() : bool
Return values
bool

setArgument()

Sets an argument value by name.

public setArgument(mixed $name, mixed $value) : mixed
Parameters
$name : mixed

The argument name

$value : mixed

The argument value

setInteractive()

Sets the input interactivity.

public setInteractive(mixed $interactive) : mixed
Parameters
$interactive : mixed

If the input should be interactive

setOption()

Sets an option value by name.

public setOption(mixed $name, mixed $value) : mixed
Parameters
$name : mixed

The option name

$value : mixed

The option value

setStream()

Sets the input stream to read from when interacting with the user.

public setStream(mixed $stream) : mixed
Parameters
$stream : mixed

The input stream

validate()

Validates the input.

public validate() : mixed

parse()

Processes command line arguments.

protected parse() : mixed

setTokens()

protected setTokens(array<string|int, mixed> $tokens) : mixed
Parameters
$tokens : array<string|int, mixed>

addLongOption()

Adds a long option value.

private addLongOption(string $name, mixed $value) : mixed
Parameters
$name : string
$value : mixed
Tags
throws
RuntimeException

When option given doesn't exist

addShortOption()

Adds a short option value.

private addShortOption(string $shortcut, mixed $value) : mixed
Parameters
$shortcut : string
$value : mixed
Tags
throws
RuntimeException

When option given doesn't exist

parseArgument()

Parses an argument.

private parseArgument(string $token) : mixed
Parameters
$token : string
Tags
throws
RuntimeException

When too many arguments are given

parseLongOption()

Parses a long option.

private parseLongOption(string $token) : mixed
Parameters
$token : string

parseShortOption()

Parses a short option.

private parseShortOption(string $token) : mixed
Parameters
$token : string

parseShortOptionSet()

Parses a short option set.

private parseShortOptionSet(string $name) : mixed
Parameters
$name : string
Tags
throws
RuntimeException

When option given doesn't exist

tokenize()

Tokenizes a string.

private tokenize(string $input) : array<string|int, mixed>
Parameters
$input : string
Tags
throws
InvalidArgumentException

When unable to parse input (should never happen)

Return values
array<string|int, mixed>

        
On this page

Search results