Question

Je suis en train d'exécuter PHP en mode interactif à partir de la fenêtre de terminal et quand je lance la commande

  php -a

il est dit « mode interactif activé » mais ne me montre pas le « PHP-> » prompt qu'il devrait. Je dois le contrôle de la presse z pour sortir du mode interactif mais je peux signer des commandes en mode interactif est « activé »

Quelqu'un sait comment résoudre ce problème

Était-ce utile?

La solution

Le shell interactif PHP nécessite que GNU readline ou libedit est compilé statiquement dans le binaire PHP. De nombreuses distributions ne fournissent que des bibliothèques partagées ne contenant que l'extension readline.

Si vous compilez PHP vous faire

./configure --with-readline

ou

./configure --with-libedit

(notez que vous, sans doute, peut ne pas distribuer les fichiers binaires PHP liés à readline en raison d'incompatibilités entre gpl et la licence PHP, vous auriez à utiliser libedit alors, mais je doute que vous voulez redistribuer Utilisation PHP lui-même de toute façon. Est . certainement ok cela n'a pas d'importance pour vos applications à base de PHP. Mais c'est l'une des raisons pour lesquelles cela ne fonctionne pas pour la plupart des distros ...)

Edit: Je viens d'un bug de dépôt PHP pour activer le mode readline avec une construction partagée, aussi, peut-être que je trouve le temps de la mettre en œuvre: http://bugs.php.net/bug.php?id=53878

Autres conseils

Il y a une solution (émulateur) qui fonctionne assez bien pour moi:

http://www.fischerlaender.net/php/phpa-norl

Il y a une autre excellente solution (créée par Facebook BTW) phpsh

Dans leurs propres mots:

phpsh est un shell interactif pour php qui met en vedette l'histoire readline, complétion, un accès rapide à la documentation. Il a été développé à Facebook et ironiquement, est écrite en python. Il est open source et publié sous licence BSD modifiée.

Je l'utilise pendant un certain temps et il est vraiment bon, à bien des égards encore mieux qu'un simple php -a

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top