(PHP 3, PHP 4)
exec() は指定された command を実行しますが、一切の出力はありま せん。ただ単に、コマンド結果の最後の行を返すだけです。コマンドを実行 し、一切干渉を受けずに直接コマンドから全てのデータを受けとる必要が あるならば、 PassThru() 関数を使ってください。
引数 array が存在する場合、指定した配列は、 コマンドからの出力の各行で埋められます。配列に既に何らかの要素が 含まれる場合は、 exec() は配列の最後に追加される ことに注意してください。関数が要素を追加することを望まないのなら、 それが exec() に渡される前に、配列の unset() を呼び出してください。 引数 return_var が、引数 array と共に存在する場合、実行したコマンドの ステータスがこの変数に書かれます。
ユーザ入力によるデータを、この関数に渡すことを許可したいのであれば、 ユーザがシステムをだまして勝手なコマンドを実行できないように、 escapeshellcmd() を使うべきです。
この関数を使用してプログラム実行を開始し、バックグラウンドで実行 したままにしたい場合には、プログラムの出力をファイルまたは他の出 力ストリームにリダイレクトする必要があることにも注意して下さい。 さもないと、PHPはそのプログラムの実行が終了するまでハングします。
system(), passthru(), popen(), escapeshellcmd(), backtick 演算子 も参照ください。