Simple library to implement event emitting capability for PHP applications.
Run the following command in the root directory of your project:
composer require gamegos/events:*
$eventManager = new Gamegos\Events\EventManager();
// Attach a callback to an event named 'foo'.
$eventManager->attach(
'foo',
function (Gamegos\Events\EventInterface $e) {
echo sprintf('Handled "%s" event with subject "%s".', $e->getName(), $e->getSubject());
}
);
// Trigger the 'foo' event with a subject ('bar').
$eventManager->trigger('foo', 'bar');
The above example will output:
Handled "foo" event with subject "bar".