php - 基于网络的编译器

标签 php c++ html c

我一直在做一个项目,制作一个读取文件(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. 输出程序可能包含对您的服务器有害的代码。

关于php - 基于网络的编译器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9016328/

相关文章:

php - JSON 数据发布但表未填充

html - 在 html 文档中,使用高度和宽度标签调整图像大小是一种不好的做法吗?

javascript - JS 循环内循环

php - 为搜索词提供黄色背景色

php - 从 html 按钮运行脚本

C++ 套接字 - 使用新行发送消息 (linux)

c++ - NTFS:多个 $DATA 属性,同名

c++ - 为什么必须在 C++ 类定义中声明方法?

html - 如何在不使用 float 的情况下向右浮动 inline-flex 的 div ?

PHP eval 和 heredoc 不能很好地发挥作用