做类似
的事情$output = shell_exec("command 2>&1");
收集命令的标准输出& $output
中的stderr,有没有办法找到命令的退出状态?
可以将命令输出写入临时文件,然后附加退出状态,但这是相当笨重的。还有更好的建议吗?
答案 0 :(得分:38)
正如您已经看到的,当使用shell_exec时,您必须使用echo $链接“真实”命令?获得退出状态:
$output_including_status = shell_exec("command 2>&1; echo $?");
但是如果你想要干净的方式,那么你想要使用exec函数,它允许第三个文章明确用于此目的。
答案 1 :(得分:11)
答案 2 :(得分:1)
以下为我使用exec()来显示输出
exec(your_command, $output, $return_var);
var_dump($output);
var_dump($return_var);