nafisc / parameterparser
A library for parsing strings of parameters
Installs: 12 679
Dependents: 1
Suggesters: 0
Security: 0
Stars: 8
Watchers: 3
Forks: 0
Open Issues: 1
Requires
- php: >=7.0
- bramus/ansi-php: ^3.0
README
Parameter Parser is a simple library used to parse intricate parameters from an array of strings.
Hint: Parameter Parser is available through Composer.
composer require nafisc/parameterparser
.
Documentation - Advanced Code Examples - Looking for the Python version?
Features
- Parse command line parameters.
- Assign aliases to parameters.
- Custom closures for each command line parameter.
- Variadic closure support for arguments taking more than one value.
- Customize the way the command line is parsed.
Example Usage
// Initialize a new Cluster $parameters = new Cluster(); // Add a Parameter to the Cluster $parameter = parameter('-', 'name', function ($name) { return $name; }); $parameter->setRequired(true) ->setDescription('Your name.'); $parameters->add($parameter); // Create a new Parser using the Cluster $parser = new Parser($argv, $parameters); // Parse the parameters using the Parser. $results = $parser->parse(); // Verify that the parameters were valid after parsing. if (! $parser->isValid()) { // Since it was not valid, output usage. $parameters->printFullUsage( "Parameter Parser", "An advanced parameter parser for PHP", "v1.0.0" ); } else { // Retrieve the name from the results $name = $results['name']; // Output the name echo 'Your name is ' . $name . PHP_EOL; }
Output
~/ php test.php -name 'Nathan Fiscaletti'
Your name is Nathan Fiscaletti