Symfony\Component\EventDispatcher\EventDispatcher::removeSubscriber PHP Method

removeSubscriber() public method

See also: EventDispatcherInterface::removeSubscriber
public removeSubscriber ( Symfony\Component\EventDispatcher\EventSubscriberInterface $subscriber )
$subscriber Symfony\Component\EventDispatcher\EventSubscriberInterface
    public function removeSubscriber(EventSubscriberInterface $subscriber)
    {
        foreach ($subscriber->getSubscribedEvents() as $eventName => $params) {
            if (is_array($params) && is_array($params[0])) {
                foreach ($params as $listener) {
                    $this->removeListener($eventName, array($subscriber, $listener[0]));
                }
            } else {
                $this->removeListener($eventName, array($subscriber, is_string($params) ? $params : $params[0]));
            }
        }
    }

Usage Example

 /**
  * Remove a subscriber
  *
  * @param EventSubscriberInterface $subscriber
  */
 public function removeSubscriber(EventSubscriberInterface $subscriber)
 {
     if ($subscriber instanceof HttpClientEventSubscriber) {
         $subscriber->attachHttpClient($this);
     }
     $this->eventDispatcher->removeSubscriber($subscriber);
 }
All Usage Examples Of Symfony\Component\EventDispatcher\EventDispatcher::removeSubscriber