我想要做的是让PHP脚本运行程序并让它以某种方式从中检索数据。例如,程序将解析文件中的数据并返回要显示的PHP脚本的数据。
到目前为止,我知道要调用exec("Program.exe");
,但是我必须让它创建一个包含数据的文件然后让PHP脚本调用fopen并以这种方式获取它吗?有没有更好的方法呢?感谢
答案 0 :(得分:5)
根据manual page for exec()
,您可以将数组作为另一个参数传递给它,该数组将填充程序的输出行。
exec("Program.exe", $results);
// $results is now an array where each element is a line of output
答案 1 :(得分:0)
如果只需输出命令和/或可以在命令行上将输入传递给外部命令,则可以使用exec()或passthru()。
如果您需要能够将更长的数据量提供给外部命令,而不是在命令行上提供,则需要通过STDIN传递它。我建议使用proc_open()来调用外部命令,但也可以通过标准输入/输出流与之通信。您可以在http://www.php.net/manual/en/function.proc-open.php
查看其示例用法