php call shell script

php call shell script

php call shell script

 

資料來源「1」:http://stackoverflow.com/questions/11052162/run-bash-command-from-php

 

$old_path = getcwd();
chdir(‘/my/path/’);
$output = shell_exec(‘./script.sh var1 var2’);
chdir($old_path);

 

———————————

資料來源「2」:http://blog.longwin.com.tw/2013/06/php-system-exec-shell_exec-diff-2013/

 

一般系統會有兩種輸出, 一種是系統狀態(return code), 一種是輸出文字(output string), 這三個 Function 主要就是這些回傳的差異.

system()
$last_line = system(‘ls’, $return_var);
system() 會將輸出內容直接印出, 所以若於網頁, 會將所有回傳內容都顯示於頁面上.
$last_line: 只能取得最後一行的內容
$return_var: 取得系統狀態回傳碼

exec()
exec(‘ls’, $output, $return_var);
$output: 回傳內容都會存於此變數中(儲存成陣列), 不會直接秀在頁面上.
$return_var: 取得系統狀態回傳碼

shell_exec()
$output = shell_exec(‘ls’);
$output: 回傳內容都會存於此變數中(儲存成純文字內容), 不會直接秀在頁面上.

 

 

 

 


One thought on “php call shell script

  1. 在Raspberry Pi 下架設 nginx+PHP
    下面php可以正常執行
    $old_path = getcwd();
    chdir(‘/home/pi/php_study’);
    $output = shell_exec(‘ls -l’);
    chdir($old_path);

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *