proc_get_status
PHP Manual
PHP Manual»プログラム実行関数»proc_get_status

proc_get_status

(PHP 5, PHP 7, PHP 8)

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

説明

function proc_get_status(resource $process): array

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 プロセスが返した終了コード (running が false の時のみ意味を持ちます)。 PHP 8.3.0 より前のバージョンでは、 正しい値を返すのは関数を最初にコールした時のみで、次に コールした際には -1 を返していました。
cached bool PHP 8.3.0 以降、終了コードがキャッシュされた場合に true を返します。 キャッシュは、この関数を後にコールした場合でも、 終了コードを失わないようにするために必要です。
termsig int プロセスを終了させたシグナルの番号です (signaled が true の時のみ意味を持ちます)。
stopsig int プロセスを停止させたシグナルの番号です (stopped が true の時のみ意味を持ちます)。

変更履歴

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

参考

  • proc_open() - コマンドを実行し、入出力用にファイルポインタを開く

To Top