我需要知道如果我通过exec命令调用一个php脚本执行命令,并且由于任何原因导致脚本执行失败,说“找不到文件”,那我该如何找到它。 我有以下命令:如何查找在exec命令中执行的命令是否失败?
$cmd="php testfile.php" ;
$outputfile="testoutput.txt";
exec(sprintf("%s > %s 2>&1 & echo $!", $cmd, $outputfile),$pidArr, $status);
exec命令返回-1的错误的情况下,但在这种情况下,高管在执行成功即$状态在我的情况下,未来0,但是“PHP testfile.php”命令失败,输出得到testoutput.txt。 但我需要知道的方式,以便我可以在exec后识别它,如果命令失败。 我可以考虑选择阅读testoutput.txt和grep的失败或错误的话,但我不认为这是可靠的。
在此先感谢!
我试过了,实际上它的第三个参数是0,在我的情况下,它是一个文件找不到错误 –
所以可能你应该找到apace error或任何其他异常处理方法来追踪它。 – liyakat
你检查过你的apache错误日志吗? – liyakat