<?php
use Illuminate\Events\Dispatcher;
$dispatcher = new Dispatcher();
$eventListener1 = function ($payload) {
dump('Listener1 ' . $payload);
};
$eventListener2 = function ($payload) {
dump('Listener2 ' . $payload);
};
// Add event listener
$dispatcher->listen('callme_*', $eventListener1);
$dispatcher->listen('*_maybe', $eventListener2);
// fire event
$payload = ['was called'];
echo 'fire event "callme_maybe"';
$dispatcher->dispatch('callme_maybe', $payload);
echo 'fire event "callme_today"';
$dispatcher->dispatch('callme_today', $payload);
^ "Listener1 callme_maybe"
^ "Listener2 callme_maybe"
^ "Listener1 callme_today"