在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美

當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

[轉]PHP也可以當成Shell Script

[轉]PHP也可以當成Shell Script

更新時間:2022-05-16 文章作者:未知 信息來源:網絡 閱讀次數:

PHP 怎么這么紅
最近 PHP(Personal Hypertext Preprocessor) 似乎已經成了這一兩年來 Linux/Unix 上最廣為大家所使用的網頁處理語言﹐它的方便、強大功能與 OpenSource 的特性使得它正逐漸侵蝕到傳統 CGI 甚至是 MicroSoft ASP(Active Server Page)的市場﹐幾乎各大網站征招人才莫不以會 PHP 作為基本條件。
PHP 確實有這個資格可以這么紅﹐原因有下面數點 :
PHP 是 OpenSource 軟件﹐完全免費﹐可以自由散布﹐因此吸引了極多的人來使用﹐也因為如此﹐吸引到了商業公司為其發展更好的引擎與最佳化軟件(請參考 http://www.zend.com/)。
PHP 本身非常簡單易懂﹐淺顯的指令語法﹐外加一些基本的對象導向處理能力﹐讓新手足以在最短時間內學會。
PHP 提供了相當多的功能﹐包含了數學處理、字符串處理、網絡相關功能、各種數據庫的支持、影像處理功能、有為數眾多的發展者正為 PHP 發展各式各樣的新功能﹐擴充性極佳。
PHP 非常容易與 Apache 相結合﹐作為 Apache 的模塊來使用﹐設定安裝上相當簡單﹐也因為 Apache 目前已經占據了 Web Server 全球 60% 的市場﹐PHP 自然而然成為 Apache 最佳搭配。
不過﹐這次要講的主題不是 PHP 在網頁設計上的應用﹐而是 PHP 在 Shell Script 上的應用﹐一般所知的 Shell Script 大約就是 tcsh、bash、perl 或是 python 這幾類語言﹐我所要談的就是將 PHP 當成 Shell Script 來使用。
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。
有時候我們需要在程序執行中輸入資料﹐但是 PHP 原本就是用于網頁設計﹐而網頁上的資料輸入自然都是用 FORM 的方式來輸入﹐所以這將 PHP 作為 Shell Script 時問題就來了﹐好在 PHP 有提供了開文件功能﹐而在 Linux/Uinx 之下﹐輸入(input)這件事原本就可以用開檔的方式來完成﹐我們要開啟的是 /dev/stdin 這個設備檔(stdin 是表示 standard input 的意思)﹐程序如下 :
#!/usr/local/bin/php -q
<?
 $fp=fopen("/dev/stdin","r");
 $inputstr=fgets($fp,100);
 fclose($fp);
 
 echo "\n----------------------\n";
 echo $inputstr;
?>
其中的 fgets($fp,100) 是指從 $fp 這個檔案(也就是 "/dev/stdin")中讀取出 100 個 byte 的資料﹐程序執行到這行便會停下來等待我們的輸入﹐當我們輸入完按下 enter 之后﹐程序就會將剛才我們輸入的資料給印出來了。
進階使用 II
雖然已經可以處理輸入﹐但是這樣的功能顯然還是太簡單﹐無法應付更大的應用﹐比如說我需要一個功能是將一串資料流(data stream)中的 HTML 給去除﹐這時便需要完整地處理輸出輸入轉向的能力﹐我們可以先設計程序如下 :
#!/usr/local/bin/php -q
<?
 $fp=fopen("/dev/stdin","r");
 
 while(!feof($fp)) {
 $c=fgetc($fp);
 $inputstr=$inputstr.$c;
 };
 
 fclose($fp);
 
 echo $inputstr;
?>
假設將此程序命名為 filt.php3﹐如果你直接執行這個程序﹐它會一直等待你輸入﹐直到你按下 Ctrl+D 后才會將你的輸入資料給印出﹐我們可以這么執行它 :
more filt.php3 | filt.php3
這樣的做法是將 filt.php3 這個程序用 more 給秀出并轉向給 filt.php3 這個程序﹐filt.php3 會不斷接受資料(事實上就是 filt.php3 程序代碼本身)﹐最后將其印出。
我們可以在其中加上過濾 HTML 的功能 :
#!/usr/local/bin/php -q
<?
 $fp=fopen("/dev/stdin","r");
 
 while(!feof($fp)) {
 $c=fgetc($fp);
 $inputstr=$inputstr.$c;
 };
 
 fclose($fp);
 
 $inputstr=ereg_replace("<([^<>]*)>","",$inputstr);
 
 echo $inputstr;
?>
假設將此程序命名為 filt2.php3﹐如此一來便完成了過濾功能﹐不信請拿個 HTML 檔來試試看 :
more xxx.html | filt2.php3
你便會看到刪除了 HTML TAG 的文件了。
結論
PHP 拿來當 Shell Script 事實上相當地好用﹐原因是 PHP 本身很好學﹐而且它又支持了各種數據庫﹐當你已經經常拿 PHP 來設計你的網站之后﹐絕對不太喜歡再使用其它的 Shell Script 語言來處理其它必須非網頁的部份﹐這時候拿 PHP 來當做 Shell Script 的好處就會顯現出來了﹐你可以以一貫的方式來發展整個系統﹐而不必一下要用 PHP一下又用 Perl/Python 或是 C。
國內的 PHP 風氣已經相當興盛﹐本站 LinuxFab 便是完全以 PHP 搭配 MySQL 發展起來的﹐事實上 PHP 的妙用還有很多﹐有機會日后再介紹﹐如果讀者們需要 PHP 的相關信息﹐歡迎到本站上的 PHP 論壇 參與更多討論。
 
出自:http://linuxfab.cx 

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美
  • <li id="86scu"><menu id="86scu"></menu></li>
    <li id="86scu"></li>
    <button id="86scu"></button>
  • <s id="86scu"></s><button id="86scu"><menu id="86scu"></menu></button>
  • 777一区二区| 国产精品一区二区小说| 午夜国产一区二区三区| 黄色一级视频在线播放| 水蜜桃在线免费观看| 性欧美在线视频| 一级黄色特级片| 一区二区在线播放视频| 国产69精品久久久久久久| 成人免费a级片| 色一情一乱一乱一区91| 中文字幕制服丝袜在线| 国产精品h视频| 三级黄色片免费看| 中文字幕久久av| 亚洲一级片免费观看| 国产精品探花在线播放| 艳母动漫在线免费观看| 超碰10000| 黄色片视频在线免费观看| wwwxxx黄色片| 免费av不卡在线| 五月天激情图片| 成人av在线不卡| 9久久9毛片又大又硬又粗| 国产无套内射久久久国产| 精品久久久久av| 四虎成人在线播放| 91成人综合网| 亚洲精品第三页| 欧美大片免费播放| 久激情内射婷内射蜜桃| 日本精品www| 日韩av福利在线观看| 国产精品久久久久7777| 北条麻妃在线视频| 欧美性视频在线播放| 精品少妇在线视频| jizz18女人| 尤物国产在线观看| 精品国偷自产一区二区三区| 国产精品动漫网站| 欧美a级免费视频| 免费看的黄色大片| 天天做天天爱天天高潮| 国产成人无码精品久久久性色| 91pony九色| 久久99999| 激情深爱综合网| 在线观看成人免费| 免费黄色一级网站| av免费观看国产| av在线网站免费观看| 337p粉嫩大胆噜噜噜鲁| 黄色网络在线观看| www.激情小说.com| 成人毛片一区二区| 精品久久久久久无码中文野结衣| 永久免费黄色片| 欧美成人乱码一二三四区免费| 欧美国产激情视频| 免费毛片网站在线观看| 日韩欧美理论片| 在线观看免费视频高清游戏推荐| 少妇高潮毛片色欲ava片| 无码人妻aⅴ一区二区三区日本| 在线观看的毛片| 欧美成人免费高清视频| 黄色一级视频在线播放| 国产a级片网站| 成人午夜精品久久久久久久蜜臀| 日韩精品一区二区三区电影| 在线观看视频在线观看| 亚洲第一精品区| 青青青青在线视频| 日韩国产小视频| 青青草精品视频在线| 国产成人在线小视频| 91专区在线观看| 日韩久久一级片| 人人干人人视频| 99精品999| 草草草视频在线观看| www.日本在线播放| 日本黄色三级大片| 国产野外作爱视频播放| 99精品999| 成人在线播放网址| 黑人糟蹋人妻hd中文字幕| 91黄色小网站| 国内外成人免费在线视频| ijzzijzzij亚洲大全| 久久在线中文字幕| 国产精品少妇在线视频| 手机av在线网站| 成人午夜免费在线| 国产九九在线观看| 男女激烈动态图| 99精品视频播放| 国产a级片免费看| 国产极品粉嫩福利姬萌白酱| 亚洲欧美在线精品| 男人添女荫道口女人有什么感觉| 国产特级黄色大片| 青青草原播放器| 中国丰满人妻videoshd| 红桃视频 国产| 欧美日韩国产精品激情在线播放| 国产高清av片| 69堂免费视频| 韩国无码av片在线观看网站| 国产极品美女高潮无套久久久| 一级淫片在线观看| 男人操女人逼免费视频| 97在线免费视频观看| 国产无遮挡猛进猛出免费软件| 男人添女人下面高潮视频| 在线视频一二区| 久久久精品麻豆| 青青草原成人网| 久久在线中文字幕| 国产免费内射又粗又爽密桃视频 | 羞羞的视频在线| 成人午夜视频在线观看免费| 91亚洲免费视频| 99久久国产宗和精品1上映| 欧美日韩午夜爽爽| 日韩a一级欧美一级| 在线观看国产中文字幕| 欧在线一二三四区| 国产黄色一级网站| 欧美视频在线观看网站| 2022中文字幕| 天堂а√在线中文在线| 污污视频在线免费| 亚欧美一区二区三区| 91小视频在线播放| 天天综合天天添夜夜添狠狠添| 无遮挡又爽又刺激的视频| 97在线免费公开视频| av无码精品一区二区三区| 中文字幕日本最新乱码视频| 亚洲午夜精品久久久久久人妖| 大西瓜av在线| 青青在线视频观看| 色婷婷综合久久久久中文字幕 | 一区二区三区 日韩| 热久久精品免费视频| 91在线视频观看免费| 欧美男女交配视频| 亚洲一二三av| 日韩人妻精品一区二区三区| 成人小视频在线观看免费| 成人免费观看在线| 大肉大捧一进一出好爽视频| 国产第一页视频| 在线视频观看91| 黄色一级视频在线播放| 成人免费视频久久| 亚洲高清在线不卡| 亚洲一区二区三区av无码| 成人综合视频在线| 日本美女视频一区| 又大又硬又爽免费视频| 欧美三级一级片| 91欧美一区二区三区| 麻豆tv在线播放| 色综合色综合色综合色综合| 亚洲第一精品区| 国产一区视频免费观看| 天天爱天天做天天操| 99精品人妻少妇一区二区| 欧美精品久久久久久久久25p| 91大学生片黄在线观看| 人妻丰满熟妇av无码区app| www.日本久久| 亚洲天堂av线| 欧美中文字幕在线观看视频| 色播五月激情五月| 男女视频网站在线观看| 在线免费黄色小视频| 国产精彩免费视频| 欧美精品一区二区三区三州| 99精品视频网站| 91亚洲免费视频| 精品少妇无遮挡毛片| 成人性生活视频免费看| 亚洲精品永久视频| 精品久久久久久久无码| 无罩大乳的熟妇正在播放| 国产又粗又猛大又黄又爽| 国产精品一区二区羞羞答答| 亚洲熟女乱色一区二区三区| 91精品一区二区三区四区| 亚洲精品第三页| 国产一伦一伦一伦| 中文字幕网av| www.cao超碰| 一区二区三区四区久久| 天天操精品视频|