首頁  >  文章  >  後端開發  >  php指令執行函數有哪些

php指令執行函數有哪些

(*-*)浩
(*-*)浩原創
2019-09-23 09:04:279678瀏覽

PHP執行系統指令的有幾個常用的函式,如有:system函式、exec函式、popen函式,passthru,shell_exec函式他們都可以執行系統指令

php指令執行函數有哪些

#Exec函數

#Exec函數的語法為:(推薦學習: PHP程式設計從入門到精通

exec ( string $command [, array &$output [, int &$return_var ]] )
=
exec('ping 127.0.0.1',$output,$return_var)

這個函數的作用是執行command 參數所指定的命令。命令執行後的值為輸出值的最後一行,函數本身不會列印任何內容。

String、array和int是參數的資料類型,分別是字串、陣列和整數。

中括號的意思是如果前一個參數存在,那麼中括號中的參數可寫可不寫。例如:如果存在$command參數,則$output參數可有可無;如果不存在$output參數,則$return_var也不能出現。

Command:要執行的命令。

Output:如果提供了output 參數, 那麼就會用指令執行的輸出填入此數組, 每行輸出填滿數組中的一個元素。數組中的資料不包含行尾的空白字符,例如 \n 字符。請注意,如果陣列中已經包含了部分元素,exec() 函數會在陣列末端追加內容。如果你不想在陣列末端進行追加, 請在傳入 exec() 函數之前 對陣列使用 unset() 函數進行重設。

return_var:如果同時提供output 和return_var 參數, 指令執行後的回傳狀態會被寫入到此變數。如果指令成功執行,則狀態碼為0;如果指令執行失敗,則狀態碼為1。

System函數

System函數的語法是:

system ( string $command [, int &$return_var ] )
=
system('ping -c 127.0.0.1',$return_var)

同C 版本的system() 函數一樣, 本函數執行command 參數所指定的命令, 且輸出執行結果。指令執行後的回傳值為輸出值的最後一行,函數本身也會列印全部的輸出值。

String和int是參數的資料類型,分別是字串和整數。

如果 PHP 運行在伺服器模組中, system() 函數也會嘗試在每行輸出完畢之後, 自動刷新 web 伺服器的輸出快取。

Command:要執行的命令。

return_var:如果提供 return_var 參數, 則外部指令執行後的回傳狀態將會設定到此變數中。如果指令成功執行,則狀態碼為0;如果指令執行失敗,則狀態碼為1。

Passthru函數

Passthru函數的語法為:

passthru ( string $command [, int &$return_var ] )
=
passthru('ping 12.0.0.1',$return_var)

String和int是參數的資料類型,分別是字串和整數。函數本身會列印全部的輸出值,但函數沒有傳回值。

同 exec() 函式類似,passthru() 函式也是用來執行外部指令command的。當所執行的 系統指令輸出二進位數據, 且需要直接傳送到瀏覽器的時候, 需要用此函數來取代 exec() 或 system() 函數。

Command:要執行的命令。

return_var:如果提供 return_var 參數, Unix 指令的回傳狀態會被記錄到此參數。

Shell_exec函數

Shell_exec函數的語法為:

$output=shell_exec ( string $cmd )
=
$output=shell_exec(`ping 127.0.0.1`)
=
$output=shell_exec("ping 127.0.0.1")

cmd是要執行的指令。

String是參數的資料類型,也就是字串。函數會在指令執行完成後將全部的輸出值輸入為字串輸入回傳值,本身並不會列印任何資訊。

Shell_exec函數的用法同反引號形同,注意是反引號(``)而不是普通單引號(’’)。

以上是php指令執行函數有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
上一篇:php如何連接sql下一篇:php如何連接sql