Updating Readme

master 1.0.0
Julien Rosset 6 years ago
parent 7e6e36ced7
commit 429df447dd

@ -1,2 +1,62 @@
# PHPCommandLine # PHPCommandLine
Command line management library in PHP (CLI) __Command line management library in PHP (CLI)__
![last release](https://badgen.net/github/release/darkelfe14728/PhpCommandLine)
![nb releases](https://badgen.net/github/releases/darkelfe14728/PhpCommandLine)
![licence](https://badgen.net/badge/license/CC%20BY%204.0/red)
A command-line options parser with configurable expects and help auto generation.
There is two kind of arguments :
- options (short/long tag) : _-h_ or _--version_
- values : my/path/to/a/file
### Description
At first, create a new CommandLine with program name and description. Add options and values by using respectively _addOption_ and _addValue_.
Default options for help (-h / --help) and version (--version) can be add with _addDefaultArguments_ and use _treatDefaultArguments_ for launching associated treatments.
Treat script arguments with _parse_ : return an object of variables.
### Example
```php
<?php
use CommandLine\CommandLine;
use CommandLine\Argument\Option\Flag;
use CommandLine\Argument\Parser\StringParser;
use CommandLine\Argument\Value\Value;
$cmdline = new CommandLine('Checker', 'File checker', 'php checker.php');
$cmdline->addDefaultArguments();
$cmdline->addOption(new Flag('enhanced', false, 'Deep check ?'));
$cmdline->addValue(new Value('path', 'File path', new StringParser()));
var_dump($args = $cmdline->parse());
$cmdline->treatDefaultArguments($args);
```
Would display something like that :
class stdClass#13 (1) {
public $enhanced => bool(false)
public $path => string("my/path/to/a/file")
}
### Automatic help generation
CommandLine provide a generator for command-line of programme. Example :
Checker
File checker
php checker.php [OPTIONS] path
Arguments :
path string File path
Options :
-h --help X Affiche cette aide
--enhanced Deep check ?

Loading…
Cancel
Save