我目前正在尝试从 PHP 网页(当前使用exec()
)中运行可执行文件。该程序从命令行运行时有两个参数;我不确定用 PHP 运行它的最佳方法是什么。
特别是,可以使用以下语法从命令行运行 .exe:
my_program.exe input_file_name.txt / output_file_name.txt
程序对输入文件中的数据进行处理,并将处理后的数据放入输出文件中。这一切都可以从命令行(在 Windows 中)正常工作。.exe 是用 Visual Basic 编写的(不是我编写的)。
我知道我通常可以exec()
通过执行以下操作来提供参数:
exec('my_program.exe "example input parameter"');
如果 .exe 被编写为从 .exe 获取输入argv()
,我已经为测试做了这些。我尝试了一些方法,例如:
$argument = "C:\wamp\www\web_dev\test\input.txt / C:\wamp\www\web_dev\test\output.txt";
exec('C:\wamp\www\web_dev\test\my_program.exe $argument');
这没有成功。(我目前正试图让它在我的本地主机上工作,以防万一..)
我相信,由于 .exe 完成了打开、写入和关闭输入和输出文件的所有工作,我只需要弄清楚如何编写一个 PHP 命令,该命令将以适当的方式执行程序。
我已经看到了与这个类似的线程,所以我希望我不会再问任何东西;我找不到与这种情况完全相关的线程。
编辑:如果有帮助,我正在努力的总体范围是创建一个允许用户上传文件的 Web 界面,然后调用我得到的可执行文件(它是通过命令行指令提供给我的上面提到的),并为用户生成一个带有处理数据的输出文件。