Y a-t-il une coque PHP de ligne de commande disponible pour Windows? Je cherche quelque chose de similaire à la coquille Python, qui me permettra d'ouvrir et de commencer immédiatement à exécuter du code. P>
9 Réponses :
Il y a la ligne de commande Windows pour PHP: http://php.net /manual/fr/install.windows.commandline.php p>
Comment se comporte-t-il comme Python Shell sous Windows? Je pense que c'est vraiment différent de la manière dont l'interactivité (dactylographie) est prise en charge par rapport à ce que demande l'OP.
J'ai tenté d'exécuter php -a code> mais cela n'a pas effectué la façon dont je m'attendais. Je n'ai pas reçu une invite d'aucune sorte (autre qu'une note disant "Mode interactif activé") et un simple
echo "Hello World" code> ne produit aucun type de sortie.
Voir la première note fournie par l'utilisateur ici pour un exemple: PHP.net/ Manuel / FR / Fearbook.comMandline.interactive.php
IIRC the Python Shell exécute sur Entrée code> pas sur
Ctrl + Z CODE>, puis appuyé sur
Entrée code>. Vous pouvez probablement créer vous-même un clavier Makro avec un outil comme AutohotKey qui le fait (par exemple sur
SHIFT + ENTER code>), puis redémarrez
php -a code>.
@hakre, oui. Ce ne sera pas exactement comme Python, mais au moins c'est interactif. Bonne note.
AFAIK Readline Soutien est requis pour le travail PHP -A pour fonctionner, donc en d'autres termes, PHP -A peut ne pas fonctionner, comme c'est le cas avec moi et l'OP.
Le temps d'exécution PHP est absolument horrible en tant que replique, même avec -a code>. Il n'a pas d'impression automatique, il sort sur certaines erreurs (bien que je pense que cela s'est amélioré dans des versions plus récentes), aucune aide intégrée, etc.
aperçu de l'exécution de php.exe avec l'argument -A code>, ou peut-être le phpsh < / a> projet. P>
Je suppose que c'est le plus proche de venir avec PHP natif.
phpsh semble être ce que je cherche, mais je ne peux pas sembler le faire courir sur Windows. Lorsque j'exécute python setup.py build code> i get
nomError: nom '__init__' n'est pas défini code>
@ewok, j'ai eu du mal à obtenir phpsh pour travailler sur Windows. J'ai piraté au code Python pour tenter de le faire fonctionner et il est définitivement écrit pour Linux. Il y a beaucoup de méthodes OS spécifiques Linux / Unix utilisées. Je pense à préparer le projet pour la rendre Windows sympathique depuis que je connais Python.
@jlafay laissez-moi savoir si / quand vous le faites et en cours d'exécution.
@ewok, je ne me souviendrai probablement pas de revenir ici et de faire un commentaire pour vous faire savoir, il est préférable de "regarder" la fourchette sur Github afin que vous puissiez recevoir des notifications. github.com/jefflafay/phpsh
AFAIK Readline Soutien est requis pour le travail PHP -A pour fonctionner, donc en d'autres termes, PHP -A peut ne pas fonctionner, comme c'est le cas avec moi et l'OP.
Le temps d'exécution PHP est absolument horrible en tant que replique, même avec -a code>. Il n'a pas d'impression automatique, il sort sur certaines erreurs (bien que je pense que cela s'est amélioré dans des versions plus récentes), aucune aide intégrée, etc. Phpsh est préférable mais écrit dans Python si quelque peu gênant d'installer sur Windows.
Il y a php-shell - ce n'est pas génial, mais toujours mieux que php -a code>. (En outre, il est mort simple à installer, il suffit d'exécuter
de poire installer http://jan.kneschke.de/assets/2007/2/17/php_shell-0.3.1.tgz code>.) Il y a Aussi PHPA-NORL , mais je ne l'ai pas essayé. P>
Le lien n'est plus valide. Jette 404
github.com/rainchen/phpa-norl Comme une recherche Google décontractée aurait découvert.
Essayez ceci: enregistrer ce code dans un fichier (par exemple shell.php), puis exécutez-le à partir de la console: p> HIT CTRL + C pour quitter. P> P>
Peut-être répondu - lire ici: https://stackoverflow.com/a/19085620/2480481 Je pense que j'ai trouvé le moyen le plus simple de le faire car je suis si intéressé à m'utiliser :) p>
J'essaie toutes les options d'ici et d'autres forums / pages ... Windows ne peut pas utiliser readline. P>
S'il vous plaît poster la réponse ici pas un lien vers la réponse
Voulez-vous dire de créer duplicité?
J'ai trouvé ces deux sur github aussi: p>
Ubermuda / phpinterActivesHell https://github.com/ubermuda/phpinteractivehell P> Li>
D11WTQ / BORIS · Non Windows https://github.com/d11wtq/boris p> li> ul>
Boris est une excellente coquille si vous utilisez Linux.
psyssh est la meilleure coquille de replète que j'ai vue récemment. Achèvement de l'onglet, prise en charge de PHPDOC, manutention appropriée des espaces de noms, débogage interactif, support de plug-in et beaucoup plus encore. C'est PHP pur et possède un support compositeur afin qu'il soit facile d'installer sur Windows. Je ne l'ai essayé que sur Linux, mais je regarde le code, il semble même avoir une prise en charge de l'histoire sur les OSES sans readline. P>
Une autre variante simple, influencée par d'autres réponses. Créez et exécutez le script CMD suivant:
@echo off :loop php.exe -r "while (true) { eval (fgets (STDIN) ); echo PHP_EOL; }" goto loop
Réponse de Predic ( https://stackoverflow.com/a/15742101/2752670 ) fonctionne pour Moi sous Windows. P>
Mais je veux utiliser le fichier nouvelle et enregistrement nouvelle variable d'environnement Windows forte>, clé: Redémarrez ordinateur p> li>
Utilisez n'importe où dans le système: P>
shell.php code> n'importe où, donc ma solution est: p>
shell.php code> dans php installé dir (ou où vous aimez sinon), par ex.
C: \ Program Files \ php-5.6.12-Win32-VC11-X64 \ shell.php code> p> li>
shell.php code>, valeur:
"C: \ Program Files \ php-5.6.12- Win32-VC11-X64 " CODE> P> LI>
php% shell.php%
code> p> li>
ol>
J'ai dû commenter "Redémarrer l'ordinateur" - c'est très rare que vous devez réellement faire cela.
Avez-vous trouvé une solution?