如何使用PHP交互式shell

我正在使用Ubuntu 12.04 64位,我想使用PHP交互式shell

php -a 

但是它似乎并不能很好地工作,很多语法都被错误地解释了。

当我运行php -a它显示:

 interactive mode enabled 

而只是一个光标闪烁。

我正在使用:PHP 5.4.13-2〜精确+ 1(cli)(内置:2013年3月21日12:17:18)

我如何使用PHP交互式shell?

尝试安装http://www.phpsh.org/这可能是最简单的解决方案。

步骤:(假设已经安装了依赖项)

  1. git clone https://github.com/facebook/phpsh
  2. cd phpsh
  3. sudo python setup.py install
  4. phpsh

如何使用PHP交互式shell

phpsh是由Facebook做出的。 要安装它看到这个: http : //www.phpsh.org/

安装方向:

 sudo apt-get install git cd /home/youruser; 

拉仓库,CD到它并安装:

 git clone https://github.com/facebook/phpsh cd phpsh sudo python setup.py install 

运行:

 el@apollo:~$ phpsh Starting php type 'h' or 'help' to see instructions & features php> 

演练:

打印字符串:

 php> echo 'hi'; hi 

做一些数学:

 php> echo 1+2; 3 

打印一些内建变量:

 php> echo $_SERVER; Array 

打印该数组的内容:

 php> print_r($_SERVER); Array ( [LANG] => en_US.UTF-8 [TERM] => xterm [SHELL] => /bin/bash ) 

获取该数组的关键字:

 php> echo $_SERVER['TERM']; xterm 

另外添加一种:

 php> =2+2 4 

打印前一个:

 php> = $_ 4 

存储一个变量:

 php> $msg = "don't just sit there fancy pants, take the wheel"; php> echo $msg; don't just sit there fancy pants take the wheel 

一个等式可以通过换行开放直到它完成:

 php> =2+ ... 3+ ... 4+5 14 

定义我们自己的数组:

 php> $derp = array(1,2,3); php> echo $derp Array 

获取变量的类型:

 php> echo gettype(PHP_VERSION); string 

对于伟大的正义,循环:

 php> $i = 0; while ($i < 3){$i++; echo "pinkie pie is best pony ";} pinkie pie is best pony pinkie pie is best pony pinkie pie is best pony 

获取自己的一些信息:

 php> phpinfo(); phpinfo(); PHP Version => 5.3.10-1ubuntu3.8 

爆炸解析空间的字符串到一个数组,print_r漂亮的打印它:

 php> function little_bad_girl(){ print_r(explode(" ", "oxy contin")); } php> little_bad_girl(); Array ( [0] => oxy [1] => contin ) 

Foreach结构可以扩展到以下几行。

 php> foreach (array(1,2,3) as $item) { ... echo $item; ... } 123 

块注释被忽略:

 php> /* echo "hidden"; */ php> 

从文件读取:

 php> $section = file_get_contents('/home/el/myfile.txt'); php> echo $section; we will become a spacefaring civilization. 

不,没时间:

 php> echo time(); 1386492405 

纯真可爱的真相:

 php> echo isset($_SERVER); 1 

创建一个数组,在其中搜索一个项目。

 php> $data = array(0, 1, 2); php> echo preg_grep("/1/", $data); Array php> print_r( preg_grep("/1/", $data)); Array ( [1] => 1 ) php> print_r( preg_grep("/4/", $data)); Array ( ) 

你想要更多??? 有足够的一生,godspeed: http ://php.about.com/od/advancedphp/

这是没有安装php5-readline软件包时会得到的。 假设这是你的问题,你可以通过运行这个命令来修复它:

 sudo apt-get install php5-readline 

PsySH怎么样 ?

一个小问题的例子:

 psysh Psy Shell v0.7.2 (PHP 5.5.12-2ubuntu4.6 — cli) by Justin Hileman >>> $toto='ejgf5d78gfmkzl' => "ejgf5d78gfmkzl" >>> substr($toto,0,2) => "ej"