(PHP 5 >= 5.3.0)
pcntl_sigwaitinfo — Waits for signals
$set
   [, array &$siginfo
  ] )
   The pcntl_sigwaitinfo() function suspends execution of the
   calling script until one of the signals given in set
   are delivered. If one of the signal is already pending (e.g. blocked by
   pcntl_sigprocmask()),
   pcntl_sigwaitinfo() will return immediately.
  
setArray of signals to wait for.
siginfo
       The siginfo parameter is set to an array containing
       informations about the signal.
      
The following elements are set for all signals:
       The following elements may be set for the SIGCHLD signal:
       
       The following elements may be set for the SIGILL,
       SIGFPE, SIGSEGV and
       SIGBUS signals:
       
       The following element may be set for the SIGPOLL
       signal:
       
On success, pcntl_sigwaitinfo() returns a signal number.
Example #1 pcntl_sigwaitinfo() example
<?php
echo "Blocking SIGHUP signal\n";
pcntl_sigprocmask(SIG_BLOCK, array(SIGHUP));
echo "Sending SIGHUP to self\n";
posix_kill(posix_getpid(), SIGHUP);
echo "Waiting for signals\n";
$info = array();
pcntl_sigwaitinfo(array(SIGHUP), $info);
?>