public function subscribe($signal, $callback)
  {
    if(empty($this->sigslots[$signal]))
    {
      $this->sigslots[$signal] = array();
    }

    $index = md5(serialize($callback));

    if(!array_key_exists($index, $this->sigslots[$signal]))
    {
      $this->sigslots[$signal][$index] = new Signal\Handler($signal, $callback);
    }

    return $this->sigslots[$signal][$index];
  }
public function subscribe($signal, $callback)
  {
    if(empty($this->sigslots[$signal]))
    {
      $this->sigslots[$signal] = array();
    }

    $index = md5(serialize($callback));

    if(!array_key_exists($index, $this->sigslots[$signal]))
    {
      $this->sigslots[$signal][$index] = new Signal\Handler($signal, $callback);
    }

    return $this->sigslots[$signal][$index];
  }
public function subscribe ( $ signal , $ callback ) { if ( empty ( $ this -> sigslots [ $ signal ] ) ) { $ this -> sigslots [ $ signal ] = array ( ) ; } $ index = md5 ( serialize ( $ callback ) ) ; if ( ! array_key_exists ( $ index , $ this -> sigslots [ $ signal ] ) ) { $ this -> sigslots [ $ signal ] [ $ index ] = new Signal \ Handler ( $ signal , $ callback ) ; } return $ this -> sigslots [ $ signal ] [ $ index ] ; }
Subscribes to a signal and returns the signal handler.

@param  string $signal
@param  mixed  $callback
@return Signal\Handler
Subscribes to a signal and returns the signal handler .