在PHP中编译和运行c++程序


Compiling and running c++ programm in PHP

我想做一个在线编译器。

我在电脑上测试我所有的代码(我安装了php)。

我写了这段代码来编译,但它不工作(我搜索了两个小时,但我没有找到

)
<?php
$file="prog.cpp";
function kompiluj(){
    global $file;
    $polecenie = 'g++ '.$file.' -o a.exe ';
    global $errorFlag;
    global $errorDetail;
    $output = exec($polecenie, $errorDetail, $errorFlag);
    echo $errorDetail;
    echo $errorFlag;
    echo $output;
}
?>

也许有人知道修理这个?非常感谢:P

——编辑:

例如我的prog.cpp看起来像

include <iostream>
using namespace std;
int main() {
cout<<"TEST";
return 0;
}

我的函数应该写"TEST",但它只写了:

数组1

我该怎么办?

从PHP文档中不清楚exec是否调用shell,但即使它这样做,它也可能提供最小的环境。无论哪种方式,您都可能需要提供g++的完整路径。试着修改一下:

$polecenie = 'g++ '.$file.' -o a.exe ';

…:

$polecenie = '/usr/bin/g++ '.$file.' -o a.exe ';

…并确保验证g++的完整路径。