開啟PHP的交互式shell模式,需要使用 -a 參數。下面是使用交互式shell的壹些例子。
$ php -a
Interactive shell
php > echo 5+8;
13
php > function addTwo($n)
php > {
php { return $n + 2;
php { }
php > var_dump(addtwo(2));
int(4)
php >
在交互式shell裏,妳可以使用 tab 鍵對函數名,內置變量,類名,靜態方法等進行自動補全操作。
需要註意的是,Interactive Shell 和 Interactive Mode 並不是壹個東西,盡管名稱和功能都很相似。
如果妳輸入 php -a ,得到的回應是 ‘Interactive Shell’ 並跟隨著 ‘php>’ 提示符,那妳使用的就是交互式shell。如果妳得到的回應是 ‘Interactive mode enabled’ ,說明妳的PHP並不支持交互式shell,上面介紹的用法也不實用於妳。
但也不用擔心,Interactive mode(交互模式)也可以在命令行窗口裏執行PHP代碼,只是代碼的執行方式有些區別。在PHP交互模式(Interactive mode)裏,妳在命令行窗口裏輸入PHP代碼,代碼不會立即執行,當妳輸入了所有PHP代碼後,輸入 Ctrl-Z (windows裏),或輸入 Ctrl-D (linux裏),妳輸入的所有代碼將會壹次執行完成並輸出結果。
在PHP交互模式(Interactive mode)裏,跟交互式shell裏不壹樣,妳的代碼需要以 <?php 開頭,跟妳的普通PHP文件裏的寫法壹致。下面是在Windows裏的使用例子。
C:\>php -a
Interactive mode enabled
<?php
echo "Hello, world!";
>^Z
Hello, world!
在Winidows裏,沒有交互式shell,只有Interactive mode。