DownloadMini Getopt (a getopt wrapper)
Very simple wrapper for getopt() function.
Usage
This is only a wrapper, therefore the output from mini-getopt is going to be
the same as getopt() function.
-
First you have to configure options you want to use. To do so use the
following methods:
- `\Jawira\MiniGetopt\MiniGetopt::addRequired`
- `\Jawira\MiniGetopt\MiniGetopt::addOptional`
- `\Jawira\MiniGetopt\MiniGetopt::addNoValue`
-
To retrieve values you have to call one of the following method:
- `\Jawira\MiniGetopt\MiniGetopt::getopt` returns the same as `getopt()`
- `\Jawira\MiniGetopt\MiniGetopt::getOption` to get only one value
Examples
PHP code:
// Preparing options
$mg = new \Jawira\MiniGetopt\MiniGetopt();
$mg->addRequired('f', 'format'); // value is required
$mg->addOptional('r', 'retry'); // value is optional
$mg->addOptional('q', ''); // only short option
$mg->addNoValue('v', 'verbose'); // no value
$mg->addNoValue('', 'version'); // only long option
// Calling getopt
var_export($mg->getopt());
Executing code:
$ php resources/example.php
array (
)
$ php resources/example.php -f=xml
array (
'f' => 'xml',
)
$ php resources/example.php --format=xml -r -v
array (
'format' => 'xml',
'r' => false,
'v' => false,
)
$ php resources/example.php -f=json -r=yes -v
array (
'f' => 'json',
'r' => 'yes',
'v' => false,
)
$ php resources/example.php --retry -vvv
array (
'retry' => false,
'v' =>
array (
0 => false,
1 => false,
2 => false,
),
)
$ php resources/example.php --version=banana --invalid
array (
'version' => false,
)
How to install
$ composer install jawira/mini-getopt
Contributing
If you liked this project, ? star it on [GitHub][].
License
This library is licensed under the MIT license.
*
Packages from jawira
<dl>
<dt><a href="https://packagist.org/packages/jawira/emoji-catalog">jawira/emoji-catalog</a> (library)</dt>
<dd>Get access to +3000 emojis as class constants.</dd>
<dt><a href="https://packagist.org/packages/jawira/plantuml">jawira/plantuml</a> (library)</dt>
<dd>Provides PlantUML integration: plantuml executable and plantuml.jar</dd>
<dt><a href="https://packagist.org/packages/jawira/plantuml-encoding">jawira/plantuml-encoding</a> (library)</dt>
<dd>PlantUML encoding functions.</dd>
<dt><a href="https://packagist.org/packages/jawira/">more...</a></dt>
</dl>
[Github]: https://github.com/jawira/mini-getopt
|