PHP中exec函數和shell_exec函數的區別


這兩個函數都是執行Linux命令函數,不同的是獲取返回結果不一樣,exec只能獲取最后一行數據,shell_execu則可以獲取全部數據。

php中的exec和shell_exec兩個函數都可以用來執行linux命令,但它們在使用方式以及結果的返回上,差別還是比較大的。

exec

調用方式:

exec($cmd.' 2>&1',$output,$status);
$cmd:shell腳本

2>&1:表示shell腳本執行過程中的錯誤信息會被輸出

$output:數組格式,用於存儲2>&1輸出的錯誤信息

$status:shell腳本的執行狀態,0表示成功,其他都表示失敗

shell_exec

調用方式:

$result = shell_exec($cmd);
$cmd:shell腳本

$result:shell腳本的執行結果

使用建議
如果你的shell腳本返回的結果是一個列表,建議使用shell_exec,相應的,如果它返回的只是某種狀態,建議用exec


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM