C++将输出显示到php中


C++ display output into php

我有一个C++控制台应用程序,它会返回一些东西,然后,我需要在浏览器中显示。因此,我尝试将C++中的每个console.write都写入一个.txt文件,以供将来读取PHP,但没有成功,因为它没有写入错误!

然后我尝试在PHP中使用exec('program.exe', $output);,但也没有成功。:/

  • 还有别的办法吗
  • 或者C++中的任何函数都会将控制台中显示的每一件事写入.txt
  • 或者另一种编程语言中的某个函数可以捕获控制台中的所有内容

您必须了解cout(标准输出)和cerr是两个不同的流,所以您可能也忘记了将cerr重定向到您的文本文件。这里有一些你可以使用的想法:

  • 将流重定向到代码上的文件(请参阅如何将cin和cout重定向到文件?)
  • 通过以下方式调用executable.exe > out.txt 2>&1,从命令行重定向任何控制台程序的输出(您不需要更改代码,并且可以在windows和unix/linux上工作)(请参阅将所有输出重定向到文件)
  • 使用TCP套接字将web应用程序连接到控制台应用程序(这可能是一种开销,但如果应用程序需要某种交互式控制,则会很有用)

有三个标准文件句柄,称为stdin、stdout和stderr。看起来您现在只获取stdout。尝试将stderr重定向到stdout。

exec('program.exe 2>&1', $output);

(不仅适用于*nix,也适用于win32)。

另请参阅:在外壳中;2>amp;1〃;意思是