https://github.com/netherphp/console
A CLI Parser.
https://github.com/netherphp/console
Last synced: 4 months ago
JSON representation
A CLI Parser.
- Host: GitHub
- URL: https://github.com/netherphp/console
- Owner: netherphp
- License: bsd-3-clause
- Created: 2015-07-14T00:46:08.000Z (over 10 years ago)
- Default Branch: redux
- Last Pushed: 2025-05-13T20:29:46.000Z (6 months ago)
- Last Synced: 2025-06-17T02:05:13.253Z (5 months ago)
- Language: PHP
- Size: 258 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# **Nether Console (netherphp/console)**
[](https://packagist.org/packages/netherphp/console)
[](https://github.com/netherphp/console/actions)
[](https://codecov.io/gh/netherphp/console)
This package provides some basic functionality for creating command line interfaces via PHP 8 attributes.
# Quickstart
```php
require('vendor/autoloader.php');
use Nether\Console\Meta\Command;
use Nether\Console\Meta\Info;
use Nether\Console\Meta\Arg;
use Nether\Console\Meta\Toggle;
class App
extends Nether\Console\Client {
#[Command]
#[Info('A whatever command.')]
public function
Whatever():
int {
echo 'Whatever', PHP_EOL;
return 0;
}
#[Command]
#[Info('A whenever command.')]
#[Arg('date', 'A date input.')]
#[Toggle('-u', 'Output as unix time.')]
public function
Whenever():
int {
$Date = $this->GetInput(1);
$Unixise = $this->GetOption('u');
if($Unixise)
echo date('U', strtotime($Date));
else
echo date('Y-m-d', strtotime($Date));
echo PHP_EOL;
return 0;
}
}
exit((new App)->Run());
```
```
$ php ./test.php
USAGE: test.php
whatever
A whatever command.
whenever
A whenever command.
-u
Output as unix time.
```