歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

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

在上一篇文章“在 Linux 命令行中使用和執行 PHP 代碼(一)”中,我同時著重討論了直接在Linux命令行中運行PHP代碼以及在Linux終端中執行PHP腳本文件。

Run PHP Codes in Linux Commandline

本文旨在讓你了解一些相當不錯的Linux終端中的PHP交互性 shell 的用法特性。

讓我們先在PHP 的交互shell中來對php.ini設置進行一些配置吧。

6. 設置PHP命令行提示符

要設置PHP命令行提示,你需要在Linux終端中使用下面的php -a(啟用PHP交互模式)命令開啟一個PHP交互shell。

  1. $ php -a

然後,設置任何東西(比如說Hi Tecmint ::)作為PHP交互shell的命令提示符,操作如下:

  1. php >#cli.prompt=Hi Tecmint ::

啟用PHP交互Shell

同時,你也可以設置當前時間作為你的命令行提示符,操作如下:

  1. php >#cli.prompt=`echo date('H:m:s');` >
  2. 22:15:43>

7. 每次輸出一屏

在我們上一篇文章中,我們已經在原始命令中通過管道在很多地方使用了less命令。通過該操作,我們可以在那些不能一屏全部輸出的地方獲得分屏顯示。但是,我們可以通過配置php.ini文件,設置pager的值為less以每次輸出一屏,操作如下:

  1. $ php -a
  2. php >#cli.pager=less

限制PHP屏幕輸出

這樣,下次當你運行一個命令(比如說條調試器phpinfo();)的時候,而該命令的輸出內容又太過龐大而不能固定在一屏,它就會自動產生適合你當前屏幕的輸出結果。

  1. php > phpinfo();

PHP信息輸出

8. 建議和TAB補全

PHP shell足夠智能,它可以顯示給你建議和進行TAB補全,你可以通過TAB鍵來使用該功能。如果對於你想要用TAB補全的字符串而言有多個選項,那麼你需要使用兩次TAB鍵來完成,其它情況則使用一次即可。

如果有超過一個的可能性,請使用兩次TAB鍵。

  1. php > ZIP [TAB][TAB]

如果只有一個可能性,只要使用一次TAB鍵。

  1. php >#cli.pager [TAB]

你可以一直按TAB鍵來獲得建議的補全,直到該值滿足要求。所有的行為都將記錄到~/.php-history文件。

要檢查你的PHP交互shell活動日志,你可以執行:

  1. $ nano ~/.php_history | less

檢查PHP交互Shell日志

9. 你可以在PHP交互shell中使用顏色,你所需要知道的僅僅是顏色代碼。

使用echo來打印各種顏色的輸出結果,類似這樣:

  1. php > echo "color_code1 TEXT second_color_code";

具體來說是:

  1. php > echo "\033[0;31m Hi Tecmint \x1B[0m";

在PHP Shell中啟用彩色

到目前為止,我們已經看到,按回車鍵意味著執行命令,然而PHP Shell中各個命令結尾的分號是必須的。

10. 在PHP shell中用basename()輸出路徑中最後一部分

PHP shell中的basename函數可以從給出的包含有到文件或目錄路徑的最後部分。

basename()樣例#1和#2。

  1. php > echo basename("/var/www/html/wp/wp-content/plugins");
  2. php > echo basename("www.tecmint.com/contact-us.html");

上述兩個樣例將輸出:

  1. plugins
  2. contact-us.html

在PHP中打印基本名稱

11. 你可以使用PHP交互shell在你的桌面創建文件(比如說test1.txt),就像下面這麼簡單

  1. php> touch("/home/avi/Desktop/test1.txt");

我們已經見識了PHP交互shell在數學運算中有多優秀,這裡還有更多一些例子會令你吃驚。

12. 使用PHP交互shell打印比如像tecmint.com這樣的字符串的長度

strlen函數用於獲取指定字符串的長度。

  1. php > echo strlen("tecmint.com");

在PHP中打印字符串長度

13. PHP交互shell可以對數組排序,是的,你沒聽錯

聲明變量a,並將其值設置為array(7,9,2,5,10)。

  1. php > $a=array(7,9,2,5,10);

對數組中的數字進行排序。

  1. php > sort($a);

以排序後的順序打印數組中的數字,同時打印序號,第一個為[0]。

  1. php > print_r($a);
  2. Array
  3. (
  4. [0]=>2
  5. [1]=>5
  6. [2]=>7
  7. [3]=>9
  8. [4]=>10
  9. )

在PHP中對數組排序

14. 在PHP交互Shell中獲取π的值

  1. php > echo pi();
  2. 3.1415926535898

15. 打印某個數比如32的平方根

  1. php > echo sqrt(150);
  2. 12.247448713916

16. 從0-10的范圍內挑選一個隨機數

  1. php > echo rand(0,10);

在PHP中獲取隨機數

17. 獲取某個指定字符串的md5校驗和sha1校驗,例如,讓我們在PHP Shell中檢查某個字符串(比如說avi)的md5校驗和sha1校驗,並交叉校驗bash shell生成的md5校驗和sha1校驗的結果。

  1. php > echo md5(avi);
  2. 3fca379b3f0e322b7b7967bfcfb948ad
  3. php > echo sha1(avi);
  4. 8f920f22884d6fea9df883843c4a8095a2e5ac6f

  1. $ echo -n avi | md5sum
  2. 3fca379b3f0e322b7b7967bfcfb948ad-
  3. $ echo -n avi | sha1sum
  4. 8f920f22884d6fea9df883843c4a8095a2e5ac6f-

在PHP中檢查md5校驗和sha1校驗

這裡只是PHP Shell中所能獲取的功能和PHP 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 的下載地址:請點這裡


via: http://www.tecmint.com/execute-php-codes-functions-in-linux-commandline/

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

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

Copyright © Linux教程網 All Rights Reserved