(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.
  
set
     Array 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);
?>