proc_get_status

proc_open で開かれたプロセスに関する情報を取得する

説明

array proc_get_status(resource $process)

proc_get_status は、proc_open で開かれたプロセスに関する情報を取得します。

パラメータ

process

評価される proc_open resource

戻り値

集められた情報を array として返します。 返される配列は次のような要素を持ちます:

要素説明
command string proc_open に指定されたコマンド文字列。
pid int プロセス ID
running bool もしプロセスがまだ動いている場合は、true 、すでに終了している場合は false
signaled bool 子プロセスが、キャッチされていないシグナルにより終了した場合に true となります。Windows では常に false にセットされます。
stopped bool 子プロセスが、シグナルにより停止した時に true となります。 Windows では常に false にセットされます。
exitcode int プロセスが返した終了コード (runningfalse の時のみ意味を持ちます)。 PHP 8.3.0 より前のバージョンでは、 正しい値を返すのは関数を最初にコールした時のみで、次に コールした際には -1 を返していました。
cached bool PHP 8.3.0 以降、終了コードがキャッシュされた場合に true を返します。 キャッシュは、この関数を後にコールした場合でも、 終了コードを失わないようにするために必要です。
termsig int プロセスを終了させたシグナルの番号です (signaledtrue の時のみ意味を持ちます)。
stopsig int プロセスを停止させたシグナルの番号です (stoppedtrue の時のみ意味を持ちます)。

変更履歴

バージョン 説明
8.3.0 返される配列に "cached" エントリが含まれるようになりました。 PHP 8.3.0 より前のバージョンでは、 最初にこの関数がコールされた場合にのみ、 正しい終了コードを返していました。 "cached" エントリは、 終了コードがキャッシュされていることを示します。

参考

  • proc_open