有一个命令行PHP的shell可用于Windows? 我寻找类似于python的东西,这将允许我打开并立即开始执行代码。
看看运行php.exe与-a
参数,或者可能是phpsh项目。
有PHP的Windows命令行: http : //php.net/manual/en/install.windows.commandline.php
尝试这个:
<?php $fh = fopen('php://stdin', 'r'); $cmd = ''; $bcLvl = 0; while (true) { $line = rtrim(fgets($fh)); $bcLvl += substr_count($line, '{') - substr_count($line, '}'); $cmd.= $line; if ($bcLvl > 0 or substr($cmd, -1) !== ';') continue; eval($cmd); $cmd = ''; }
将这段代码保存到一个文件(例如shell.php),然后从控制台运行它:
php shell.php
按CTRL + C退出。
另一个简单的变体,受其他答案的影响。 创建并运行以下cmd脚本:
@echo off :loop php.exe -r "while (true) { eval (fgets (STDIN) ); echo PHP_EOL; }" goto loop
立即执行,Ctrl + C退出。 在“php.exe”之前插入正确的路径。
有php的外壳 – 这不是很好,但仍然比php -a
更好。 (另外,安装简单,只需运行pear install http://jan.kneschke.de/assets/2007/2/17/PHP_Shell-0.3.1.tgz
。)还有phpa-norl ,但是我还没有尝试过。
我在github上也发现了这两个:
ubermuda / PHPInteractiveShell https://github.com/ubermuda/PHPInteractiveShell
d11wtq / boris·非Windows的https://github.com/d11wtq/boris
PsySH是我最近看到的最好的REPL shell。 Tab完成,phpdoc支持,适当的命名空间处理,交互式调试,插件支持等等。 这是纯粹的PHP和作曲家的支持,所以它应该很容易安装在Windows上。 我只在Linux上试过,但是看代码,它似乎甚至没有readline的操作系统的历史支持。
@Pavle Predic的答案( https://stackoverflow.com/a/15742101/2752670 )适用于Windows。
但我想在任何地方使用shell.php
文件,所以我的解决方案是:
新的和保存shell.php
在PHP安装目录(或其他地方你喜欢),例如C:\Program Files\php-5.6.12-Win32-VC11-x64\shell.php
新建一个Windows环境变量 ,键: shell.php
,值: "C:\Program Files\php-5.6.12-Win32-VC11-x64"
重启电脑
在系统中的任何地方使用:
php %shell.php%
也许回答 – 阅读这里: https : //stackoverflow.com/a/19085620/2480481我想我找到了最简单的方法来做到这一点,因为我很喜欢使用自己:)
我尝试从这里和其他论坛/网页的所有选项… Windows不能使用readline。