Full-featured php command line application library.
Provide console parameter parsing, command run, color style output, user information interaction, and special format information display.
NOTICE: Current version v4.1+, require PHP 8.0+
Easy to use. Can be easily integrated into any existing project.
- Command line application,
controller,commandparsing run on the command line - Support for setting aliases for commands. A command can have multiple aliases.
- Support command display/hide, enable/disable.
- Full-featured command line option parameter parsing (named parameters, short options
-s, long options--long). - The
input,outputof the command line, management, use - Command method comments are automatically parsed as help information (by default,
@usage@arguments@options@example) - Support for outputting message texts of multiple color styles (
info,comment,success,warning,danger,error... ) - Commonly used special format information display (
section,panel,padding,helpPanel,table,tree,title,list,multiList) - Rich dynamic information display (
pending/loading,pointing,spinner,counterTxt,dynamicText,progressTxt,progressBar) - Common user information interaction support (
select,multiSelect,confirm,ask/question,askPassword/askHiddenInput) - Support for predefined parameter definitions like
symfony/console(giving parameter values by position, recommended when strict parameter restrictions are required) - The color output is
windowslinuxmaccompatible. Environments that do not support color will automatically remove the relevant CODE. - Quickly generate auto-completion scripts for the current application in the
bash/zshenvironment - NEW: Support start an interactive shell for run application
- Built-in Phar packaging tool class, which can be easily packaged into
pharfiles. Easy to distribute and use- Run the command
php examples/app phar:packin the example, which will package this console library into anapp.phar
- Run the command
- Built-in file download tool class under command line with progress bar display
- Command line php code highlighting support (from
jakub-onderka/php-console-highlighterand making some adjustments) - Simple Terminal screen, cursor control operation class
- Simple process operations using classes (fork, run, stop, wait ..., etc.)
All features, effects; can be run in the example code
phps/appinexamples/. Basically covers all the features and can be tested directly
- Requirement PHP 8.0+
composer require inhere/consolePlease go to WIKI for detailed usage documentation
- Document Home
- Feature Overview
- Install
- Create Application
- Add Command
- Add Command Group
- Register Command
- Error/Exception Capture
- Input Object
- output object
- Formatted Output
- Progress Dynamic Output
- User Interaction
- Extension Tools
phpunit
// output coverage without xdebug
phpdbg -dauto_globals_jit=Off -qrr /usr/local/bin/phpunit --coverage-textYou can set debug level by ENV CONSOLE_DEBUG=level, global option --debug level
# by ENV
$ CONSOLE_DEBUG=4 php examples/app
$ CONSOLE_DEBUG=5 php examples/app
# by global options
$ php examples/app --debug 4Check out these projects, which use https://github.com/inhere/php-console :
- kite Kite is a tool for help development.
- More, please see github used by
- inhere/php-validate A compact and full-featured php verification library
- inhere/sroute Lightweight and fast HTTP request routing library
