0
我有一些C++代码,我想在服务器上运行并返回输出结果。我知道用PHP运行C++代码
exec("./myprogram.exe", $out);
应该运行程序和$out
将保持输出。目前我无法从我的程序获得输出...它使用cout
输出它,并且我在Windows上编译它,我想运行它的服务器是基于Linux的。任何指针?
我有一些C++代码,我想在服务器上运行并返回输出结果。我知道用PHP运行C++代码
exec("./myprogram.exe", $out);
应该运行程序和$out
将保持输出。目前我无法从我的程序获得输出...它使用cout
输出它,并且我在Windows上编译它,我想运行它的服务器是基于Linux的。任何指针?
首先,你需要重新编译Linux上的C++代码,使用第一g++ -Wall -g
(论据为了g++
matters a lot) - 那么其他一些编译器arguments-因为-Wall
询问所有警告和-g
调试信息。一旦你的代码在Linux上进行了调试,你也可以通过-O2
询问GCC进行优化。
然后,您需要使用PHP的popen函数来获取您的命令的输出(通过pipe)。如所记录的,使用例如fgets从管子手柄上读取,别忘了pclose吧。另见this answer。
论证顺序在这里如何处理? –
我添加了一个链接到以前的答案;我讨论的是'g ++'的论点顺序。 –
很明显。我在说这是无关紧要的。 –