PHP Console
A simple, full-featured php command line application library.
Provide console parameter parsing, command run, color style output, user information interaction, and special format information display.
Command line preview
Features
Easy to use. Can be easily integrated into any existing project.
- Command line application,
controller
,command
parsing 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
,output
of 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
windows
linux
mac
compatible. Environments that do not support color will automatically remove the relevant CODE. - Quickly generate auto-completion scripts for the current application in the
bash/zsh
environment - NEW: Support start an interactive shell for run application
Built-in tools
- Built-in Phar packaging tool class, which can be easily packaged into
phar
files. Easy to distribute and use- Run the command
php examples/app phar:pack
in 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-highlighter
and 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/app
inexamples/
. Basically covers all the features and can be tested directly
Installation
composer require inhere/console
Document List
Please 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
Project address
Unit test
phpunit
// output coverage without xdebug
phpdbg -dauto_globals_jit=Off -qrr /usr/local/bin/phpunit --coverage-text
License
My other projects
- inhere/php-validate A compact and full-featured php verification library
- inhere/sroute Lightweight and fast HTTP request routing library