I'm trying to run PHP in interactive mode from the terminal window and when i run the command
php -a
it says "Interactive mode enabled" but does not show me the "php->" prompt that it should. I have to press control z to get out of interactive mode but I can execute any commands while interactive mode is "enabled"
Does anyone know how to fix this
The PHP interactive shell requires that GNU readline or libedit is compiled statically into the PHP binary. Many distributions only provide shared libraries containing only the readline extension.
If you compile PHP yourself do
./configure --with-readline
or
./configure --with-libedit
(note that you, probably, may not redistribute PHP binaries linked to readline due to incompatibilities between GPl and the PHP license, you'd have to use libedit then, but I doubt you want to redistribute PHP itself anyways. Usage is certainly ok. This doesn't matter for your PHP-base applications. But this is one of the reasons why this doesn't work for most distros ...)
Edit: I just filed a PHP bug to enable readline mode with a shared build, too, maybe i find time to implement it: http://bugs.php.net/bug.php?id=53878
There is a solution (emulator) which works pretty well for me:
http://www.fischerlaender.net/php/phpa-norl
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With