[ 永遠的UNIX::UNIX技術資料的寶庫 ]   GB | BIG5

首頁 > 編程技術 > Php > 正文
PHP4手冊:函數庫及函數(十三) 程式執行功能函式庫
http://netleader.126.com 星空浪子 (2001-04-18 11:32:00)

--------------------------------------------------------------------------------
 程式執行功能函式庫 
--------------------------------------------------------------------------------
 


本函式庫共有 4 個函式
escapeshellcmd: 除去字串中的特殊符號。 
exec: 執行外部程式。 
system: 執行外部程式並顯示輸出資料。 
passthru: 執行外部程式並不加處理輸出資料。 

--------------------------------------------------------------------------------
 函式:escapeshellcmd() 
--------------------------------------------------------------------------------
 


程式執行功能函式庫


escapeshellcmd
除去字串中的特殊符號。

語法: string escapeshellcmd(string command);

傳回值: 字串

函式種類: 作業系統與環境


 
 
內容說明 


本函式除去了字串中的特殊符號,可以防止使用者耍花招來破解該伺服器系統。可以用本函式搭配 exec() 或是 system() 二個函式,醬子可以減少網路上的使用者惡意的破壞的機會。


 
 
使用范例 


system(EscapeShellCmd($cmdline));
?>


--------------------------------------------------------------------------------
 函式:exec() 
--------------------------------------------------------------------------------
 


程式執行功能函式庫


exec
執行外部程式。

語法: string exec(string command, string [array], int [return_var]);

傳回值: 字串

函式種類: 作業系統與環境


 
 
內容說明 


本函式執行輸入 command 的外部程式或外部指令。它的傳回字串只是外部程式執行傳回的最一行;若需要完整的傳回字串,可以使用 PassThru() 這個函式。

要是參數 array 存在,command 會將 array 加到參數中執行,若不欲 array 被處理,可以在執行 exec() 之前呼叫 unset()。若是 return_var 跟 array 二個參數都存在,則執行 command 之的狀態會填入 return_var 中。

值得注意的是若需要處理使用者輸入的資料,而又要防止使用者耍花招破解系統,則可以使用 EscapeShellCmd()。


 
 
參考 


system()  PassThru()  popen()  EscapeShellCmd()  
 

--------------------------------------------------------------------------------
 函式:system() 
--------------------------------------------------------------------------------
 


程式執行功能函式庫


system
執行外部程式並顯示輸出資料。

語法: string system(string command, int [return_var]);

傳回值: 字串

函式種類: 作業系統與環境


 
 
內容說明 


本函式就像是 C 語中的函式 system(),用來執行指令,並輸出結果。若是 return_var 參數存在,則執行 command 之的狀態會填入 return_var 中。同樣值得注意的是若需要處理使用者輸入的資料,而又要防止使用者耍花招破解系統,則可以使用 EscapeShellCmd()。若 PHP 以模組式的執行,本函式會在每一行輸出自動更新 Web 伺服器的輸出緩沖暫存區。若需要完整的傳回字串,且不想經過不必要的其它中間的輸出介面,可以使用 PassThru()。


 
 
參考 


PassThru()  popen()  Exec()  
 

--------------------------------------------------------------------------------
 函式:passthru() 
--------------------------------------------------------------------------------
 


程式執行功能函式庫


passthru
執行外部程式並不加處理輸出資料。

語法: string passthru(string command, int [return_var]);

傳回值: 字串

函式種類: 作業系統與環境


 
 
內容說明 


本函式類似 Exec() 用來執行 command 指令,並輸出結果。若是 return_var 參數存在,則執行 command 之的狀態會填入 return_var 中。若輸出的資料是二進位的資料,並且需要輸出到瀏覽器中的話,使用本函式就相當合適了。例如使用 pbmplus 工具來執行指令,並傳回二進位的圖形資料。可以先設定傳回資料的標頭 (header) 為 Content-type: image/gif,然呼叫 pbmplus 程式處理圖形資料,並將二進位的圖形資料直接傳回瀏覽器。


 
 
參考 


PassThru()  Exec()   (http://www.fanqiang.com)
    進入【UNIX論壇

相關文章
PHP4手冊:函數庫及函數(四十六) SNMP 網管函式庫 (2001-04-18 16:56:55)
PHP4手冊:函數庫及函數(四十五) Solid 資料庫連結函式庫 (2001-04-18 16:54:16)
PHP4手冊:函數庫及函數(四十四) 信號與共享記憶體函式庫 (2001-04-18 16:49:09)
PHP4手冊:函數庫及函數(四十三) 常規表示法函式庫 (2001-04-18 16:40:33)
PHP4手冊:函數庫及函數(四十二) URL 處理函式庫 (2001-04-18 16:37:13)
PHP4手冊:函數庫及函數(四十一) PostgreSQL 資料庫函式庫 (2001-04-18 15:58:12)
PHP4手冊:函數庫及函數(四十) PDF 格式檔案函式庫 - 2 (2001-04-18 15:53:53)
PHP4手冊:函數庫及函數(四十) PDF 格式檔案函式庫 - 1 (2001-04-18 15:53:35)
PHP4手冊:函數庫及函數(三十九) Perl 相容語法函式庫 (2001-04-18 15:45:08)
PHP4手冊:函數庫及函數(三十八) Oracle 資料庫函式庫 (2001-04-18 15:43:09)

===更多相關===
 

★  樊強制作 歡迎分享  ★