2013-06-30 78 views
19

我新的PHP和我只是想在命令提示符(交互模式)運行PHP執行, 所以我輸入驗證碼 - php -v <?php echo 7; ?> 但我不知道如何執行它,因爲當我按下輸入CMD期望我繼續編寫代碼。我在php.net和其他一些論壇上搜索,但沒有發現任何東西。那麼有沒有功能鍵或者什麼來顯示結果。如何在PHP交互模式

在此先感謝。

+0

我也嘗試過這樣做的評論更多信息。答案在[手冊](http://www.php.net/manual/en/features.commandline.interactive.php)的第一個代碼中。 簡而言之,您必須使用--with- readline選項。該評論還說,你輸入php -m並查看是否有readline。在Windows機器上,沒有。 –

回答

20

Ctrl鍵 + d將觸發結束文件的情況,導致該腳本被執行。

又見How does the interactive php shell work?

互動殼牌和交互模式是不一樣的東西,儘管 相似的名稱和功能。

如果您鍵入php -a並獲得「交互式shell」後跟一個php>提示符的響應,那麼您的交互式shell可用(PHP 已使用readline支持進行編譯)。如果您獲得 「啓用交互模式」的響應,則您沒有可用的交互式shell ,本文不適用於您。

因此,如果你得到的只是「啓用交互模式」,那麼你就只能 能夠輸入PHP代碼,然後當你做,PHP發送一個EOF到 執行它。

「EOF」表示「文件結束」。

+1

沒有EOF這樣的字符。 EOT(傳輸結束)通過Ctrl + D發送; ETX(文本的結尾)用Ctrl + C發送。[更多。](http://academic.evergreen.edu/projects/biophysics/technotes/program/ascii_ctrl.htm) – Walf

20

如果按照您的命令與ctrl-D不起作用,您可能沒有Interactive Shell(顯然在每行後輸入)。這需要編譯PHP的特殊選項。但如果php -ainteractive mode,您可以直接輸入並在文件末尾發送ctrl-z

php -a 
interactive mode enabled 

<?php 
echo "hello there world!"; 
phpinfo(); 
?> 
^Z 

(打進入

hello there world! 
phpinfo.... 

有在php comments.

+1

您使用的是什麼操作系統?使用Linux Mint立即退出Ctrl + Z – kurdtpage