A simple, fast, and fun example for building command line apps in PHP.
- Support help text for special commands or in general
- Support multi commands (also alias supported)
- Support
-hand--helpflags - Support special flags for commands
max@base:~$ php cli.php
Usage:
donya [command]
Available Commands:
help Help about any command
install Installing package(s) in DonyaOS
remove Removing package(s) in DonyaOS
list Listing package(s) in DonyaOS
search Search package(s) in the repository of DonyaOS
Flags:
-h, --help help for donya
Use "donya [command] --help" for more information about a command.
php cli.php install php ; install php version 7.1
php cli.php i php ; install php version 7.1
php cli.php i php7.4 ; install php version 7.4
php cli.php i gcc ; install gcc
php cli.php s php ; search all package with php perfix
php cli.php search php ; search all package with php perfix
php cli.php r php ; remove php package
php cli.php remove php ; remove php package
php cli.php r php* ; remove all php prefix package
php cli.php i php* ; install all php prefix package
function callCommand($command) { global $argv; $args=$argv; unset($args[0]); // software name. e.g: donya unset($args[1]); // command name $args=array_values($args); // start index of items from 0 in Array switch ($command) { case "i": case "install": commandInstall($args); break; case "r": case "remove": commandRemove($args); break; case "u": case "update": commandUpdate($args); break; case "l": case "list": commandList($args); break; case "s": case "search": commandSearch($args); break; case "h": case "help": default: help($command); break; } }
Donya Package Manager was purpose of building this command line app in PHP.
My nickname is Max, Programming language developer, Full-stack programmer. I love computer scientists, researchers, and compilers. (Max Base)
A team includes some programmer, developer, designer, researcher(s) especially Max Base.