PHPがサポートするプロセス制御関数は、UNIX形式のプロセス生成、プロ セス実行、シグナル処理、プロセス終了機能を実装しています。 プロセス制御は、Webサーバ環境で有効にするべきではなく、プロセス制 御関数のどれかがWebサーバ環境で使用された場合には、予期しない結果 を生じる可能性があります。
この文書は、プロセス制御関数の一般的な使用法を説明しようとするもの です。UNIXのプロセス制御に関する詳細な情報については、fork(2), waitpid(2) and signal(2)のようなシステムのドキュメントや、 [Advanced Programming in the UNIX Environment by W. Richard Stevens (Addison-Wesley)]のような優れた参考書 を読まれることを推奨します。
PHPがサポートするプロセス制御機能は、デフォルトでは有効となってい ません。プロセス制御機能を有効にするには、PHPをコンパイルする際に configure のオプションに --enable-pcntl を付ける必要があります。
注意 現在、このモジュールは非UNIX環境(Windows)では動作しません。
以下のシグナルのリストは、プロセス制御関数でサポートされているもの です。これらのシグナルのデフォルト動作の詳細については、 signal(7) のマニュアルを参照下さい。
表 1サポートされるシグナル
| SIGFPE | SIGCONT | SIGKILL |
| SIGSTOP | SIGUSR1 | SIGTSTP |
| SIGHUP | SIGUSR2 | SIGTTIN |
| SIGINT | SIGSEGV | SIGTTOU |
| SIGQUIT | SIGPIPE | SIGURG |
| SIGILL | SIGALRM | SIGXCPU |
| SIGTRAP | SIGTERM | SIGXFSZ |
| SIGABRT | SIGSTKFLT | SIGVTALRM |
| SIGIOT | SIGCHLD | SIGPROF |
| SIGBUS | SIGCLD | SIGWINCH |
| SIGPOLL | SIGIO | SIGPWR |
| SIGSYS |
この例は、シグナルハンドラを有するデーモンプロセスをフォークオフ します。