我在php中有一個可執行的exec(「java $ file」)命令,但問題是我不確定如何從java程序獲得標準輸出。我知道有第二個參數(例如,exec(「java $ file」,$ output)),但似乎沒有返回來自java程序的輸出。例如,如果我有一個只包含println(「Hello World」)的java程序,我如何通過php中的exec()獲取該輸出?Php exec with Java
謝謝!
我在php中有一個可執行的exec(「java $ file」)命令,但問題是我不確定如何從java程序獲得標準輸出。我知道有第二個參數(例如,exec(「java $ file」,$ output)),但似乎沒有返回來自java程序的輸出。例如,如果我有一個只包含println(「Hello World」)的java程序,我如何通過php中的exec()獲取該輸出?Php exec with Java
謝謝!
從docs是:
string exec (string $command [, array &$output [, int &$return_var ]])
如果輸出參數存在,則指定數組將充滿每從命令行輸出
例如:
exec('java ' . $file, $output);
print_r($output);
沒關係。好的,它的工作。您必須在輸出上運行print_r以打印數組,然後您將看到標準輸出。
你可能想使用popen()
或更一般proc_open()
print_r只是一個可用於數組和對象以及字符串的print語句。它不會對$輸出做任何事情,它始終在工作。 – 2010-11-22 02:51:12