我有一个我在终端测试的命令,它工作正常,但是当我在脚本中调用命令在浏览器上显示输出时,它似乎不起作用。我的命令需要时间才能在终端显示输出,这是因为它没有显示在浏览器上的贡献。
set_time_limit (0);
echo '<pre>';
$output=array();
$last_line = system('cat /home/me/dev/test/working/test_string.txt | java -jar /home/simon/logstash/build/logstash-1.1.10.dev-monolithic.jar agent -f /home/me/dev/test/working/my_itch_con.config',$output);
echo '</pre>';
echo "Complete";
print_r($output);
echo "<br>";
答案 0 :(得分:2)
system
的参数(它不会显示输出,它只会返回命令的状态)
<强>命令强>
将要执行的命令。
<强> return_var 强>
如果存在return_var参数, 然后执行命令的返回状态将 被写入这个变量。
////////////////////////////////的 ............ .................................................. ........................ 强> ////////////////////// /////////////////////
Use `exec` command instead
<强>命令强>
将要执行的命令。
<强>输出强>
如果输出参数存在,那么指定的数组将被命令的每一行输出填充。尾随空格(例如\ n)不包含在此数组中。请注意,如果数组已包含某些元素,则exec()将附加到数组的末尾。如果您不希望函数附加元素,请在将数组传递给exec()之前调用数组上的unset()。
<强> return_var 强>
如果return_var参数与输出参数一起出现,则执行命令的返回状态将写入此变量。
<强> EG: - 强>
exec('whoami', $test, $arr);
print_r($test);
在浏览器中o / p
Array ( [0] => nt authority\system )
了解更多信息
答案 1 :(得分:0)
确认是否在system
块
disable_function
功能
设置error_reporting(E_ALL)以显示所有错误