使用 PHP 运行C++代码

Run C++ code with PHP

本文关键字:代码 C++ 运行 PHP 使用      更新时间:2023-10-16

我有一些C++代码,我想在服务器上运行并返回输出。我知道那件事

exec("./myprogram.exe", $out);

应该运行程序,$out将保存输出。目前我无法从我的程序获取输出...它使用cout输出它,我在 Windows 上编译了它,我想运行它的服务器是基于 Linux 的。有什么指示吗?

首先,您需要在Linux上重新编译C++代码,首先使用g++ -Wall -g(参数的顺序g++很重要) - 然后是其他一些编译器参数 - 因为-Wall要求所有警告和调试信息的-g。一旦你的代码在Linux上调试,你也可以通过-O2来要求GCC进行优化。

然后你需要使用 PHP 的 popen 函数来获取命令的输出(通过管道)。如文档所示,使用例如 fgets 从管道手柄读取,并且不要忘记关闭它。另请参阅此答案。