Диспечер
класс Dispatcher реализует Dispatcher (View source)
Свойства
| protected Container | $container | Экземпляр контейнера IoC. | |
| protected array | $listeners | Зарегистрированные слушатели событий. | |
| protected array | $wildcards | Слушатели с подстановочными знаками. | |
| protected array | $wildcardsCache | Кэшированные слушатели с подстановочными знаками. | |
| protected callable | $queueResolver | Экземпляр обработчика очереди. |
Методы
| void | __construct(Container $container = null) Создать новый экземпляр диспетчера событий. | |
| void | listen(string|array $events, mixed $listener) Зарегистрировать слушателя события в диспетчере. | |
| void | setupWildcardListen(string $event, mixed $listener) Настроить обратный вызов слушателя с подстановочными знаками. | |
| bool | hasListeners(string $eventName) Определить, есть ли слушатели для данного события. | |
| void | push(string $event, array $payload = []) Зарегистрировать событие и полезную нагрузку для запуска позже. | |
| void | flush(string $event) Очистить набор отложенных событий. | |
| void | subscribe(object|string $subscriber) Зарегистрировать подписчика события в диспетчере. | |
| mixed | resolveSubscriber(object|string $subscriber) Разрешить экземпляр подписчика. | |
| array|null | until(string|object $event, mixed $payload = []) Запускать событие, пока не будет возвращен первый ненулевой ответ. | |
| array|null | fire(string|object $event, mixed $payload = [], bool $halt = false) Запустить событие и вызвать слушателей. | |
| array|null | dispatch(string|object $event, mixed $payload = [], bool $halt = false) Запустить событие и вызвать слушателей. | |
| array | parseEventAndPayload(mixed $event, mixed $payload) Проанализировать заданное событие и полезную нагрузку и подготовить их для запуска. | |
| bool | shouldBroadcast(array $payload) Определить, содержит ли полезная нагрузка транслируемое событие. | |
| bool | broadcastWhen(mixed $event) Проверить, должно ли событие быть транслировано по условию. | |
| void | broadcastEvent(ShouldBroadcast $event) Транслировать заданный класс события. | |
| array | getListeners(string $eventName) Получить всех слушателей для данного имени события. | |
| array | getWildcardListeners(string $eventName) Получить слушателей с подстановочными знаками для события. | |
| array | addInterfaceListeners(string $eventName, array $listeners = []) Добавить слушателей для интерфейсов события в заданный массив. | |
| Closure | makeListener(Closure|string $listener, bool $wildcard = false) Зарегистрировать слушателя события в диспетчере. | |
| Closure | createClassListener(string $listener, bool $wildcard = false) Создать слушателя на основе класса, используя контейнер IoC. | |
| callable | createClassCallable(string $listener) Создать вызываемый объект события на основе класса. | |
| array | parseClassCallable(string $listener) Разделить слушателя на основе класса и метод. | |
| bool | handlerShouldBeQueued(string $class) Определить, должен ли обработчик событий быть помещен в очередь. | |
| Closure | createQueuedHandlerCallable(string $class, string $method) Создать вызываемый объект для размещения обработчика событий в очереди. | |
| bool | handlerWantsToBeQueued(string $class, array $arguments) Определить, хочет ли обработчик событий быть помещен в очередь. | |
| void | queueHandler(string $class, string $method, array $arguments) Поместить обработчик класса в очередь. | |
| array | createListenerAndJob(string $class, string $method, array $arguments) Создать слушателя и задачу для слушателя в очереди. | |
| mixed | propagateListenerOptions(mixed $listener, mixed $job) Распространить параметры слушателя на задачу. | |
| void | forget(string $event) Удалить набор слушателей из диспетчера. | |
| void | forgetPushed() Удалить все отложенные слушатели. | |
| Queue | resolveQueue() Получить реализацию очереди из обработчика. | |
| $this | setQueueResolver(callable $resolver) Установить реализацию обработчика очереди. |
Подробности
void __construct(Container $container = null)
Создать новый экземпляр диспетчера событий.
void listen(string|array $events, mixed $listener)
Зарегистрировать слушателя события в диспетчере.
protected void setupWildcardListen(string $event, mixed $listener)
Настроить обратный вызов слушателя с подстановочными знаками.
bool hasListeners(string $eventName)
Определить, есть ли слушатели для данного события.
void push(string $event, array $payload = [])
Зарегистрировать событие и полезную нагрузку для последующего срабатывания.
void flush(string $event)
Очистить набор отложенных событий.
void subscribe(object|string $subscriber)
Зарегистрировать подписчика событий в диспетчере.
protected mixed resolveSubscriber(object|string $subscriber)
Разрешить экземпляр подписчика.
array|null until(string|object $event, mixed $payload = [])
Срабатывать событие до тех пор, пока не вернётся первый ненулевой ответ.
array|null fire(string|object $event, mixed $payload = [], bool $halt = false)
Сгенерировать событие и вызвать слушателей.
array|null dispatch(string|object $event, mixed $payload = [], bool $halt = false)
Сгенерировать событие и вызвать слушателей.
protected array parseEventAndPayload(mixed $event, mixed $payload)
Обработать переданное событие и полезную нагрузку и подготовить их к отправке.
protected bool shouldBroadcast(array $payload)
Определить, содержит ли полезная нагрузка транслируемое событие.
protected bool broadcastWhen(mixed $event)
Проверить, должно ли событие транслироваться по условию.
protected void broadcastEvent(ShouldBroadcast $event)
Транслировать заданный класс события.
array getListeners(string $eventName)
Получить всех слушателей для заданного имени события.
protected array getWildcardListeners(string $eventName)
Получить слушателей с подстановкой для события.
protected array addInterfaceListeners(string $eventName, array $listeners = [])
Добавить слушателей для интерфейсов события в заданный массив.
Closure makeListener(Closure|string $listener, bool $wildcard = false)
Зарегистрировать слушателя событий в диспетчере.
Closure createClassListener(string $listener, bool $wildcard = false)
Создать слушателя на основе класса с использованием контейнера IoC.
protected callable createClassCallable(string $listener)
Создать вызываемый объект на основе класса.
protected array parseClassCallable(string $listener)
Разделить слушателя по классам и методам.
protected bool handlerShouldBeQueued(string $class)
Определить, должен ли обработчик события быть помещён в очередь.
protected Closure createQueuedHandlerCallable(string $class, string $method)
Создать вызываемый объект для добавления обработчика событий в очередь.
protected bool handlerWantsToBeQueued(string $class, array $arguments)
Определить, хочет ли обработчик событий быть помещён в очередь.
protected void queueHandler(string $class, string $method, array $arguments)
Поместить класс обработчика в очередь.
protected array createListenerAndJob(string $class, string $method, array $arguments)
Создать слушателя и задачу для слушателя в очереди.
protected mixed propagateListenerOptions(mixed $listener, mixed $job)
Распространить параметры слушателя на задачу.
void forget(string $event)
Удалить набор слушателей из диспетчера.
void forgetPushed()
Забыть все добавленные слушателей.
protected Queue resolveQueue()
Получить реализацию очереди из разрешителя.
$this setQueueResolver(callable $resolver)
Установить реализацию разрешителя очереди.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/5.6/Illuminate/Events/Dispatcher.html