在php中使用exec()编译.java文件

时间:2014-04-23 02:05:10

标签: php

我正在使用file_get_contents()将.java文件放入textarea中,这样可以正常工作。一旦发生这种情况,用户就会编辑该文件并提交此新代码。

尽管我试图阅读php中exec()函数的主题,我相信它可以用来编译.java文件以及执行它。我只想编译这个.java文件,并希望在文件无法编译时发出警告,因此不能提交。

是否可以使用exec()命令或php中的任何其他命令来执行此操作,或者我是否正在查找错误的方向?谢谢。

1 个答案:

答案 0 :(得分:1)

我尝试使用shell_exec(),但我只输出文件结果。这是我的代码:

$fileName = $f_file.".java";
$filePath = "./java_file/";
$openFile = fopen($filePath.$fileName, 'w');
fwrite($openFile, $code);

//compile file
exec("cd /opt/lampp/htdocs/javaPro/java_file; javac {$fileName} 2>&1", $output, $resultCode);

// compile have wrong
if ($resultCode) {
  echo implode("\n", $output);
}

// compile success
else {
  $excuteResult = shell_exec("cd /opt/lampp/htdocs/javaPro/java_file; java {$f_file} 2>&1");
  echo $excuteResult;
}