執行外部程式並且顯示原始輸出

passthru

(PHP 4, PHP 5, PHP 7, PHP 8)

passthru執行外部程式並且顯示原始輸出

說明

passthru(string $command, int &$result_code = null): ?bool

exec() 函式類似, passthru() 函式 也是用來執行外部命令(command)的。 當所執行的 Unix 命令輸出二進制數據, 並且需要直接傳送到瀏覽器的時候, 需要用此函式來替代 exec()system() 函式。 常用來執行諸如 pbmplus 之類的可以直接輸出影象流的命令。 通過設定 Content-type 為 image/gif, 然後呼叫 pbmplus 程式輸出 gif 檔案, 就可以從 PHP 指令碼中直接輸出影象到瀏覽器。

參數

command

要執行的命令。

result_code

如果提供 result_code 參數, Unix 命令的返回狀態會被記錄到此參數。

返回值

成功時返回 null, 或者在失敗時返回 false

註釋

警告

當傳入使用者提供的數據到本函式時,應使用 escapeshellarg()escapeshellcmd() 來防止使用者欺騙系統執行任意命令。

注意:

如何程式使用此函式啟動,爲了能保持在後臺執行,此程式必須將輸出重定向到檔案或其它輸出流。否則會導致 PHP 掛起,直至程式執行結束。

參見

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *