我想用php编译错误。我可以接受某些命令的输出,但不能接受编译命令的输出。
例如 :

$compileCode = "g++ -o program program.cpp";
$output = `$compileCode`;

不起作用。但
$output = `ls -l`;

作品

最佳答案

尝试将stderr重定向到stdout:

$compileCode = "g++ -o program program.cpp 2>&1";
$output = `$compileCode`;

如果只想看到错误,也可以将stdout重定向到/dev/null:
$compileCode = "g++ -o program program.cpp 2>&1 1>/dev/null";
$output = `$compileCode`;

10-08 05:39