2010-05-13 120 views
4

我有一個執行bash腳本的php腳本。我嘗試傳遞這樣的參數:如何從PHP傳遞參數調用bash腳本

$script="/opt/lampp/htdocs/adapt.sh" 
$file="/opt/lampp/htdocs/videos/video1.mp4" 
$prefix="Test" 

exec ('.$script.' '.$file.' '.$prefix.'); 

怎麼了?我如何傳遞參數?

+1

你已經能發現什麼是錯的只是看看你的語法高亮如何... – 2010-05-13 10:40:02

回答

3

你在錯誤的地方你的點,應該閱讀:

exec ($script . ' ' . $file . ' ' . $prefix); 

或更具可讀性

exec("$script $file $prefix"); 
+0

是,有用!!謝謝!! – nabrugir 2010-05-13 10:40:13

1

我真的不明白你的問題是什麼,但你的exec()調用看起來應該像這樣:

exec ($script.' '.$file.' '.$prefix); 

如果您接受來自外部的參數(例如從GET或POST參數),請確保出於安全原因在參數上使用escapeshellarg()

+0

謝謝,它的工作原理! – nabrugir 2010-05-13 10:41:02

1

這是錯誤的:

exec ('.$script.' '.$file.' '.$prefix.'); 

要小心用引號:-)

exec ($script.' '.$file.' '.$prefix);