贝雅明
我有一些C ++代码,我想在服务器上运行并返回输出。我知道
exec("./myprogram.exe", $out);
应该运行该程序并$out
保留输出。目前,我无法从程序中获取输出...它使用输出cout
并在Windows上对其进行编译,要在其上运行的服务器是基于Linux的。有指针吗?
巴西尔·斯塔林凯维奇
首先,您需要在Linux上重新编译C ++代码,首先使用g++ -Wall -g
(参数的顺序g++
非常重要),然后再使用其他一些编译器参数,因为它-Wall
要求所有警告和-g
调试信息。在Linux上调试代码后,您还-O2
可以要求GCC进行优化。
然后,您需要使用PHP的popen函数来获取命令的输出(通过pipe)。如所记录的,使用例如fgets从管道手柄读取,并且不要忘记将其关闭。另请参阅此答案。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
编辑于
我来说两句