1. 程式人生 > >在 Linux 命令列中使用和執行 PHP 程式碼(二):12 個 PHP 互動性 shell 的用法

在 Linux 命令列中使用和執行 PHP 程式碼(二):12 個 PHP 互動性 shell 的用法

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,Dream It Possible。  更多PHP相關技術請搜尋千鋒PHP,做真實的自己,用良心做教育。