2010-05-13 123 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);