基于Web的编译器

Web based compiler

本文关键字:编译器 Web 基于      更新时间:2023-10-16

我一直在做一个项目,制作一个读取文件(c/c++文本文件)并编译上面写的代码的网站。

如何使用服务器上的编译器?

如果$_POST['CODE']包含cpp代码。您可以执行以下操作。

$code = do_sanitizing($_POST['CODE']);
$filename = "cfile".time().".c";
// put the contents in a file
file_put_contents($filename, $code);
// compile it
$output = system("/usr/bin/gcc $filename  2>&1");
echo $output;

注意:这种类型的编译和运行程序存在危险的安全缺陷。

  1. 您必须净化用户输入
  2. C源代码可能会使编译过程崩溃
  3. 输出程序可能包含对服务器有危险的代码

在操作系统中使用编译器。例如,在Linux中,您可以使用gcc。您可以使用exec从PHP运行。

PHP有system()exec()函数。也许这些就是你想要的?