系统输出未显示在网络浏览器 php 中


System output not displaying in web browser php

我有一个命令,我已经在终端中测试过,它工作正常,但是当我在脚本中调用该命令以在浏览器上显示输出时,它似乎不起作用。我的命令需要时间才能在终端中显示输出,这是为什么它没有显示在浏览器上的贡献。

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>"; 

system的参数(它不会显示输出,它只会返回命令的状态)

命令

将执行的命令。

return_var

如果存在return_var参数, 则执行命令的返回状态将 写入此变量。

/

////////////////////////////////////////////

Use `exec` command instead

命令

将执行的命令。

输出

如果存在输出参数,则指定的数组将填充命令的每一行输出。尾随空格(如 ')不包括在此数组中。请注意,如果数组已经包含一些元素,exec() 将附加到数组的末尾。如果您不希望函数附加元素,请在将数组传递给 exec() 之前在数组上调用 unset()。

return_var

如果 return_var 参数与输出参数一起存在,则执行命令的返回状态将写入此变量。

EG:-

exec('whoami', $test, $arr);
print_r($test);

在浏览器中,它 o/p

Array ( [0] => nt authority'system ) 

欲了解更多信息

http://php.net/manual/en/function.exec.php

确认是否在 php 中禁用system函数.ini在 disable_function 块中

当设置为 error_reporting(E_ALL) 以显示所有错误时