php學習筆記6 控制台程式

2021-04-09 08:13:02 字數 968 閱讀 2711

** 例項在linux下測試通過

控制台直譯器有兩種,一種是cgi的,它會生成帶有http頭輸出;另外一種是 純cli(command line inte***ce)的,它不會生成http頭。使用方法都是一樣的,記得不要通過標準輸入來輸入程式,而要用php -f

filename。輸入php -v可以知道你的php是哪一種。然而,我發現其實cgi的似乎也會產生不帶http頭的輸出。linux下編譯後安裝cli,要執行make install-cli。下面兩個例子都是可以直接在控制台中執行的,只要加上x許可權。詳細資料,請閱讀官方文件:

例子1-標準輸入、輸出(stdin, stdout, stderr):

#!/usr/bin/php

enter two numbers

:<?

phpfscanf

(stdin,"

%d %d",

$a,

$b);

echo

"$a+$b=".

($a+$b

);?>

注意上面這段程式最後一行是個空行,這是很巧妙的,<?php ... ?>之外的東西都被當成標準輸出進行輸出。

例子2-命令列引數($argc,$argv,always $argc>=1):

#!/usr/bin/php

<?

phpif

( $argc==1

) echo

"command line arguments: ";

for($i=

0;

$i<

$argc;$i

++) 

echo

"$argv[$i] ";

?>

事實上,如果使用的是cgi版本,那麼上面的第一行要加上引數-f,成為#!/usr/bin/php -f。

控制台程式裡呼叫控制台程式

現在遇到這麼個問題,我想用控制台裡呼叫控制台程式來實現多文字。但是在控制台裡呼叫控制台程式時,它不是出現新的控制台視窗顯示,而是已有的控制台裡顯示呼叫的程式,system d code 練習 jjplace editor debug editor.exe winexec d code 練習 jjpl...

網管控制台學習筆記

1.注意include路徑設定,由於 裡面是 include 所以只需要包含到g svn winutils library snmp include 而不要到g svn winutils library snmp include snmp pp,這樣就錯了 2.儲存list control裡面的內容...

沒有控制台視窗的控制台程式

include include pragma comment linker,subsystem windows entry maincrtstartup int main int argc,char argv 編譯後執行程式會彈出乙個訊息框,而沒有背後的控制台視窗。再看看下面的 include in...