mirror of
https://github.com/php/php-src.git
synced 2026-03-26 17:22:15 +01:00
. Added cli.pager ini setting to set a pager for output. . Added cli.prompt ini settingto configure the shell prompt. . Added shortcut #inisetting=value to change ini settings at run-time. . Don't terminate shell on fatal errors. A pager can be a an shell command which will receive the command output on its STDIN channel php > #cli.pager=less php > phpinfo(); (output will appear in the pager) php > #cli.pager=grep -i readline php > phpcredits(); Readline => Thies C. Arntzen php > #cli.pager= (output appears again direct on the terminal) A prompt can contain a few escape sequences like php > #cli.prompt=\e[032m\v \e[031m\b \e[34m\> \e[0m 5.3.99-dev php > //Colorful prompt with version number A prompt can also contaian PHP code in backticks php > #cli.prompt=`echo gethostname();` \b \> guybrush php >
The CLI (command line interface) SAPI has been introduced
with a goal of making PHP better at supporting the creation of
stand alone applications.
It is based on CGI SAPI with all CGI specific things removed.
The main differences between the two:
* CLI is started up in quiet mode by default.
(-q switch kept for compatibility)
* It does not change the working directory to that of the script.
(-C switch kept for compatibility)
* Plain text error message
* $argc and $argv registered irrespective of the register_argc_argv
php.ini setting.
* implicit_flush always on
* -r option which allows execution of PHP code directly from
the command line (e.g. php -r 'echo md5("test");' )
* Other more sophisticated command line switches (see: man php)
* max_execution_time is set to unlimited, overriding php.ini setting.