parent
7e6e36ced7
commit
429df447dd
@ -1,2 +1,62 @@
|
|||||||
|
|
||||||
# PHPCommandLine
|
# PHPCommandLine
|
||||||
Command line management library in PHP (CLI)
|
__Command line management library in PHP (CLI)__
|
||||||
|
|
||||||
|

|
||||||
|

|
||||||
|

|
||||||
|
|
||||||
|
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…
Reference in New Issue