从PHP执行C程序

时间:2016-06-21 18:06:24

标签: php c bash shell

我正在执行一个C程序,即'.exe',它是来自PHP的可执行文件。

我有一个HTML界面,每当我点击一个按钮就会调用一个PHP文件。

在PHP上,它调用一个shell脚本。 所以在PHP上,我使用以下内容:

echo shell_exec('sh auto_script.sh');

shell文件执行程序.exe,如下所示:

./import -file.txt

其中import是我的可执行程序C程序.exe和file.txt是一个输入,我现在很难编码。

可执行文件'import'存储在与调用的php文件相同的目录中。

当我在终端上执行shell脚本时,它会以必要的输出正确执行。

但是当我尝试从PHP执行它时它不起作用。截至目前,我已授予完整的文件权限。

1 个答案:

答案 0 :(得分:0)

快速检查[ shell_exec ]联机帮助页shell_exec,其定义如下:

  

string shell_exec(string $ cmd)

这意味着参数应该是一个字符串,这确实意味着它应该在引号内。顺便说一下,你不需要这里的中介脚本,所以:

echo shell_exec('./import "-file.txt"'); //Using relative paths

说过将二进制文件放在脚本文件夹中是一个坏主意,但我希望上面有助于你帮助你。