PHP也可以當成Shell Script使用

來源:互聯網
上載者:User

PHP 執行檔的安裝

一般 PHP 作為網頁處理語言都是要編譯成 Apache 的模組﹐這裡當然不麼做﹐也因此編譯起來很簡單﹐只要以 root 的身分進行如下動作 :

解開 php-3.0.xx.tar.gz

cd php

configure

make

編譯完之後﹐在 php 目錄下有一個可執行檔﹐檔名為 php﹐將它 copy 到 /usr/local/bin 下即可。注意﹐如果檔案太大﹐可以使用 strip 指令將 php 的方式將不必要的資訊去除﹐這樣檔案就會小得多了。

第一個程式

開始撰寫我們的第一個 PHP Shell Script 程式﹐這個例子印出 "Hello world !" :

  #!/usr/local/bin/php -q
   echo "Hello, world !";
   ?>

注意到 PHP 原本是應用在網頁應用的﹐因此它內定會送出 HTML 的 HEADER﹐但是在此我們是要將 PHP 用作 Shell Script﹐"-q" 就是表示不要送出 HEADER 的意思﹐你可以試試看不加上 -q 的顯示結果。

在這個例子中﹐/usr/local/bin/php 是表示要執行 /usr/local/bin/ 下的 PHP﹐因為我們剛才將它裝在該處。echo 指令將 "Hello, world !" 印出﹐其中的 "" 字元是換行字元。

注意到在將這個程式存成檔案後﹐須將其 chmod 成為可執行屬性(chmod +x 檔案名稱)﹐然後才能執行喔。

進階使用 I

有時候我們需要在程式執行時﹐送進一些參數﹐比如說 ls 這個指令﹐後面可以加上 -l 參數﹐PHP Shell Script 一樣也有支援這樣的用法﹐有兩個特殊的變數 : $argc 記錄著後面送入參數的個數﹐$argv[] 數組參數存著的則是參數的內容。比如說我現在要設計一個算兩個數字總和的程式 :

  #!/usr/local/bin/php -q
   $sum=0;
   $sum=$sum+$argv[1]+$argv[2];
   echo $sum;
   ?>

假設將此程式命名為 sum.php3﹐則執行 sum.php3 1 2 按下 enter 則會印出 3。

如果要算出不特定個數的參數和﹐那麼就得要用到 $argc 這個特殊變數了 :

  #!/usr/local/bin/php -q
     $sum=0;
   for ($t=1;$t<=$argc;$t++)
   $sum=$sum+$argv[$t];
   echo $sum;
   ?>

假設將此程式命名為 bigsum.php3﹐則執行 bigsum.php3 1 2 3 4 5 按下 enter 則會印出 15﹐執行 bigsum.php3 1 2 3 4 5 6 按下 enter 則會印出 21。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.