A interactive PHP Shell ======================= The more I work with other languages like python and ruby I like their way how they work on problems. While PHP is very forgiving on errors, it is weak on the debugging side. It was missing a simple to use interactive shell for years. Python and Ruby have their ipython and iruby shell which give you a direct way to interact with the objects. No need to write a script and execute it afterwards. Starting the Shell ------------------ Starting with PHP_Shell 0.2.1 starting the shell is done by calling the shell-wrappers: $ php-shell.sh or on Windows > php-shell.bat Write your own wrapper ---------------------- Sometimes you want to write your own shell where you provide your own defaults, colours and error-handlers. <?php error_reporting(E_ALL); require "php-shell-cmd.php"; ?> and execute it with: $ php -q php-shell.php Inline Help ----------- PHP-Shell - Version 0.2.0, with readline() support (c) 2006, Jan Kneschke <jan@kneschke.de> released under the terms of the PHP License 2.0 >> use '?' to open the inline help >> ? "inline help for the PHP-shell >> ? print this help >> ? <topic> get the doccomment for a class, method, property or function >> p <var> execute a verbose print (if implemented) >> quit leave shell " >> ? PHP_Shell Shell Colours ------------- The shell supports colours to seperate Exceptions from normal output of your functions. To enable the colours you can to set: >> :set background=dark By default the colour-schemes 'plain' (the default), 'light' and 'dark' are defined. You can also register your own colour schemes: >> $__shell->registerColourScheme( 'custom', array( .. "default" => PHP_SHELL::C_LIGHT_RED, /* colour of the prompt */ .. "value" => PHP_SHELL::C_BLACK, /* colour of a return value */ .. "exception" => PHP_SHELL::C_RED, /* colour of a exception */ .. )) Alternatives ------------ - http://david.acz.org/phpa/ - http://www.hping.org/phpinteractive/ - the embedded interactive php-shell: $ php -a