歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> 在 Linux 命令行中使用和執行 PHP 代碼(一)

在 Linux 命令行中使用和執行 PHP 代碼(一)

日期:2017/3/1 9:26:51   编辑:Linux編程

PHP是一個開源服務器端腳本語言,最初這三個字母代表的是“Personal Home Page”,而現在則代表的是“PHP:Hypertext Preprocessor”,它是個遞歸首字母縮寫。它是一個跨平台腳本語言,深受C、C++和Java的影響。

在 Linux 命令行中運行 PHP 代碼

PHP的語法和C、Java以及帶有一些PHP特性的Perl變成語言中的語法十分相似,它當下大約正被2.6億個網站所使用,當前最新的穩定版本是PHP版本5.6.10。

PHP是HTML的嵌入腳本,它便於開發人員快速寫出動態生成的頁面。PHP主要用於服務器端(而Javascript則用於客戶端)以通過HTTP生成動態網頁,然而,當你知道可以在Linux終端中不需要網頁浏覽器來執行PHP時,你或許會大為驚訝。

本文將闡述PHP腳本語言的命令行方面。

1. 在安裝完PHP和Apache2後,我們需要安裝PHP命令行解釋器。

  1. # apt-get install php5-cli [Debian 及類似系統]
  2. # yum install php-cli [CentOS 及類似系統]

接下來我們通常要做的是,在/var/www/html(這是 Apache2 在大多數發行版中的工作目錄)這個位置創建一個內容為 <?php phpinfo(); ?>,名為 infophp.php 的文件來測試(PHP是否安裝正確),執行以下命令即可。

  1. # echo '<?php phpinfo(); ?>' > /var/www/html/infophp.php

然後,將浏覽器訪問 http://127.0.0.1/infophp.php ,這將會在網絡浏覽器中打開該文件。

檢查PHP信息

不需要任何浏覽器,在Linux終端中也可以獲得相同的結果。在Linux命令行中執行/var/www/html/infophp.php,如:

  1. # php -f /var/www/html/infophp.php

從命令行檢查PHP信息

由於輸出結果太大,我們可以通過管道將上述輸出結果輸送給 less 命令,這樣就可以一次輸出一屏了,命令如下:

  1. # php -f /var/www/html/infophp.php | less

檢查所有PHP信息

這裡,‘-f‘選項解析並執行命令後跟隨的文件。

2. 我們可以直接在Linux命令行使用phpinfo()這個十分有價值的調試工具而不需要從文件來調用,只需執行以下命令:

  1. # php -r 'phpinfo();'

PHP調試工具

這裡,‘-r‘ 選項會讓PHP代碼在Linux終端中不帶<>標記直接執行。

3. 以交互模式運行PHP並做一些數學運算。這裡,‘-a‘ 選項用於以交互模式運行PHP。

  1. # php -a
  2. Interactive shell
  3. php > echo 2+3;
  4. 5
  5. php > echo 9-6;
  6. 3
  7. php > echo 5*4;
  8. 20
  9. php > echo 12/3;
  10. 4
  11. php > echo 12/5;
  12. 2.4
  13. php > echo 2+3-1;
  14. 4
  15. php > echo 2+3-1*3;
  16. 2
  17. php >exit

輸入 ‘exit‘ 或者按下 ‘ctrl+c‘ 來關閉PHP交互模式。

啟用PHP交互模式

4. 你可以僅僅將PHP腳本作為shell腳本來運行。首先,創建在你當前工作目錄中創建一個PHP樣例腳本。

  1. # echo -e '#!/usr/bin/php\n<?php phpinfo(); ?>' > phpscript.php

注意,我們在該PHP腳本的第一行使用#!/usr/bin/php,就像在shell腳本中那樣(/bin/bash)。第一行的#!/usr/bin/php告訴Linux命令行用 PHP 解釋器來解析該腳本文件。

其次,讓該腳本可執行:

  1. # chmod 755 phpscript.php

接著來運行它,

  1. # ./phpscript.php

5. 你可以完全靠自己通過交互shell來創建簡單函數,這你一定會被驚到了。下面是循序漸進的指南。

開啟PHP交互模式。

  1. # php -a

創建一個函數,將它命名為 addition。同時,聲明兩個變量 $a$b

  1. php >function addition ($a, $b)

使用花括號來在其間為該函數定義規則。

  1. php >{

定義規則。這裡,該規則講的是添加這兩個變量。

  1. php { echo $a + $b;

所有規則定義完畢,通過閉合花括號來封裝規則。

  1. php {}

測試函數,添加數字4和3,命令如下:

  1. php > var_dump (addition(4,3));

樣例輸出

  1. 7NULL

你可以運行以下代碼來執行該函數,你可以測試不同的值,你想來多少次都行。將裡頭的 a 和 b 替換成你自己的值。

  1. php > var_dump (addition(a,b));

  1. php > var_dump (addition(9,3.3));

樣例輸出

  1. 12.3NULL

創建PHP函數

你可以一直運行該函數,直至退出交互模式(ctrl+z)。同時,你也應該注意到了,上面輸出結果中返回的數據類型為 NULL。這個問題可以通過要求 php 交互 shell用 return 代替 echo 返回結果來修復。

只需要在上面的函數的中 ‘echo‘ 聲明用 ‘return‘ 來替換

替換

  1. php { echo $a + $b;

  1. php {return $a + $b;

剩下的東西和原理仍然一樣。

這裡是一個樣例,在該樣例的輸出結果中返回了正確的數據類型。

PHP函數

永遠都記住,用戶定義的函數不會從一個shell會話保留到下一個shell會話,因此,一旦你退出交互shell,它就會丟失了。

希望你喜歡此次教程。保持連線,你會獲得更多此類文章。保持關注,保持健康。請在下面的評論中為我們提供有價值的反饋。點贊並分享,幫助我們擴散。

PHP 7 ,你值得擁有 http://www.linuxidc.com/Linux/2015-06/118847.htm

在 CentOS 7.x / Fedora 21 上面體驗 PHP 7.0 http://www.linuxidc.com/Linux/2015-05/117960.htm

CentOS 6.3 安裝LNMP (PHP 5.4,MyySQL5.6) http://www.linuxidc.com/Linux/2013-04/82069.htm

在部署LNMP的時候遇到Nginx啟動失敗的2個問題 http://www.linuxidc.com/Linux/2013-03/81120.htm

Ubuntu安裝Nginx php5-fpm MySQL(LNMP環境搭建) http://www.linuxidc.com/Linux/2012-10/72458.htm

《細說PHP》高清掃描PDF+光盤源碼+全套教學視頻 http://www.linuxidc.com/Linux/2014-03/97536.htm

CentOS 6中配置PHP的LNMP的開發環境 http://www.linuxidc.com/Linux/2013-12/93869.htm

PHP 的詳細介紹:請點這裡
PHP 的下載地址:請點這裡

還請閱讀: 12個Linux終端中有用的的PHP命令行用法——第二部分


via: http://www.tecmint.com/run-php-codes-from-linux-commandline/

作者:Avishek Kumar 譯者:GOLinux 校對:wxy

本文由 LCTT 原創翻譯,Linux中國 榮譽推出

Copyright © Linux教程網 All Rights Reserved