exec

(PHP 3, PHP 4 , PHP 5)

exec -- 外部プログラムを実行します

説明

string exec ( string command, string [array], int [return_var])

exec()は指定された commandを実行しますが、一切の出力はありま せん。ただ単に、コマンド結果の最後の行を返すだけです。コマンドを実行 し、一切干渉を受けずに直接コマンドから全てのデータを受けとる必要が あるならば、PassThru() 関数を使ってください。

引数arrayが存在する場合、指定した配列は、 コマンドからの出力の各行で埋められます。配列に既に何らかの要素が 含まれる場合は、exec()は配列の最後に追加される ことに注意してください。関数が要素を追加することを望まないのなら、 それが exec() に渡される前に、配列の unset()を呼び出してください。 引数return_varが、引数 arrayと共に存在する場合、実行したコマンドの ステータスがこの変数に書かれます。

ユーザ入力によるデータを、この関数に渡すことを許可したいのであれば、 ユーザがシステムをだまして勝手なコマンドを実行できないように、 escapeshellcmd()を使うべきです。

この関数を使用してプログラム実行を開始し、バックグラウンドで実行 したままにしたい場合には、プログラムの出力をファイルまたは他の出 力ストリームにリダイレクトする必要があることにも注意して下さい。 さもないと、PHPはそのプログラムの実行が終了するまでハングします。

system(),passthru(), popen(),escapeshellcmd(), backtick 演算子 も参照ください。