class ArgvParser

Argument parser.

Traits

Suggestion trait.

Constants

INT_REGEX

Regex that matches integers.

FLOAT_REGEX

Regex that matches floats.

Properties

protected array $argv Argv.
protected array $arguments Arguments.
protected array $map Map.
protected array $positionals Positional arguments.
protected array $parsed Parsed arguments.
protected bool $ignoreUnknownArguments Should unknown arguments be ignored?

Methods

string|null
suggest(string $string, array $alternatives)

Returns the string that resembles the provided string the most.

__construct(array $argv, array $arguments = [])

Constructor.

array
getArguments()

Returns the registered arguments.

string|null
findArgumentSuggestion(string $name)

Tries to find a suggestion for the invalid argument name.

Argument|null
getArgument(string $name)

Returns an argument based on its name.

clearCache()

Clears the parsed argument cache.

addArgument(Argument $argument)

Add argument.

addArguments(array $arguments)

Add arguments.

bool|float|int|string
castValue(Argument $argument, string|null $token, bool|string $value)

Casts the value to the desired type.

storeValue(Argument $argument, string|null $token, bool|string|null $value)

Store the value.

storeOptionValue(Argument $argument, string $token, string|null $value, array $tokens)

Stores option values.

parseOption(string $token, array $tokens)

Parses an option.

parseAlias(string $token, array $tokens)

Parses an alias.

parsePositional(string $token, array $positionals, array $tokens, bool $parseOptions)

Parses a positional argument.

array
parse(bool $ignoreUnknownArguments = false)

Parses the arguments.

mixed
getArgumentValue(string $argument, mixed $default = null, bool $ignoreUnknownArguments = false)

Returns the value of a parsed argument.

Details

in SuggestionTrait at line 25
protected string|null suggest(string $string, array $alternatives)

Returns the string that resembles the provided string the most.

NULL is returned if no string with a similarity of 66% or more is found.

Parameters

string $string String
array $alternatives Alternatives

Return Value

string|null

at line 96
__construct(array $argv, array $arguments = [])

Constructor.

Parameters

array $argv Argv
array $arguments Array of arguments

at line 108
array getArguments()

Returns the registered arguments.

Return Value

array

at line 119
protected string|null findArgumentSuggestion(string $name)

Tries to find a suggestion for the invalid argument name.

Parameters

string $name Invalid argument name

Return Value

string|null

at line 130
protected Argument|null getArgument(string $name)

Returns an argument based on its name.

Parameters

string $name Argument name

Return Value

Argument|null

at line 150
ArgvParser clearCache()

Clears the parsed argument cache.

Return Value

ArgvParser

at line 162
addArgument(Argument $argument)

Add argument.

Parameters

Argument $argument Argument

at line 210
addArguments(array $arguments)

Add arguments.

Parameters

array $arguments Array of arguments

at line 226
protected bool|float|int|string castValue(Argument $argument, string|null $token, bool|string $value)

Casts the value to the desired type.

Parameters

Argument $argument Argument
string|null $token Token
bool|string $value Value

Return Value

bool|float|int|string

at line 257
protected storeValue(Argument $argument, string|null $token, bool|string|null $value)

Store the value.

Parameters

Argument $argument Argument
string|null $token Token
bool|string|null $value Value

at line 284
protected storeOptionValue(Argument $argument, string $token, string|null $value, array $tokens)

Stores option values.

Parameters

Argument $argument Argument
string $token Token
string|null $value Value
array $tokens &$tokens Remaining tokens

at line 312
protected parseOption(string $token, array $tokens)

Parses an option.

Parameters

string $token Token
array $tokens &$tokens Remaining tokens

at line 335
protected parseAlias(string $token, array $tokens)

Parses an alias.

Parameters

string $token Token
array $tokens &$tokens Remaining tokens

at line 372
protected parsePositional(string $token, array $positionals, array $tokens, bool $parseOptions)

Parses a positional argument.

Parameters

string $token Token
array $positionals &$positionals Remaining positional arguments
array $tokens &$tokens Remaining tokens
bool $parseOptions Are we still parsing options?

at line 405
array parse(bool $ignoreUnknownArguments = false)

Parses the arguments.

Parameters

bool $ignoreUnknownArguments Should unknown arguments be ignored?

Return Value

array

at line 467
mixed getArgumentValue(string $argument, mixed $default = null, bool $ignoreUnknownArguments = false)

Returns the value of a parsed argument.

Parameters

string $argument Argument name
mixed $default Default value
bool $ignoreUnknownArguments Should unknown arguments be ignored?

Return Value

mixed