0

ターミナルでテストしたコマンドがあり、正常に動作しますが、スクリプトでコマンドを呼び出してブラウザに出力を表示すると、動作しないようです。私のコマンドは、ターミナルに出力を表示するのに時間がかかります。これは、ブラウザに表示されない理由の1つです。

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

2 に答える 2

2

へのパラメーターsystem(出力は表示されません。コマンドのステータスが返されるだけです)

指図

実行されるコマンド。

return_var

return_var 引数が存在する場合、実行されたコマンドの戻りステータスがこの変数に書き込まれます。

////////////////////////////// ................... ................................................................... ................... ////////////////////////////// ///////////

Use `exec` command instead

指図

実行されるコマンド。

出力

出力引数が存在する場合、指定された配列はコマンドからの出力のすべての行で埋められます。\n などの末尾の空白は、この配列には含まれません。配列にすでにいくつかの要素が含まれている場合、exec() は配列の最後に追加されることに注意してください。関数に要素を追加させたくない場合は、配列を exec() に渡す前に unset() を呼び出します。

return_var

出力引数とともに return_var 引数が存在する場合、実行されたコマンドの戻りステータスがこの変数に書き込まれます。

例えば:-

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

print_r($test);

ブラウザで o/p

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

詳細については

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

于 2013-01-25T07:00:17.080 に答える
0

ブロックsystem内の php.ini で機能を無効にしているかどうかを確認しますdisable_function

すべてのエラーを表示するように error_reporting(E_ALL) を設定した場合

于 2013-01-25T06:33:51.123 に答える