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

时间:2013-01-25 06:24:53

标签: php system exec output

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

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

2 个答案:

答案 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 ) 

了解更多信息

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

答案 1 :(得分:0)

确认是否在system

中的php.ini中禁用了disable_function功能

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