dev-master
9999999-dev https://github.com/PHPPowertools/EventPHP PowerTools Event Component
MIT
The Requires
- php >=5.4.0
by John Slegers
PHP PowerTools Event Component
PHPPowertools is a web application framework for PHP >= 5.4., (*1)
PHPPowertools/Event is the third component of the PHPPowertools that has been released to the public., (*2)
The purpose of this component is to provide a PHP-based event handling interface similar to both NodeJS's EventEmitter and your browser's EventTarget., (*3)
use \PowerTools\Event_Emitter as Event_Emitter; // Define some event handlers $eventHandlers = [ 'handler1' => function($a = '', $b = '') { // var_dump($this); echo 'handler1 fired with parameters "' . $a . '" and "' . $b . '"<br />'; }, 'handler2' => function($a = '', $b = '') { // var_dump($this); echo 'handler2 fired with parameters "' . $a . '" and "' . $b . '"<br />'; }, 'handler3' => function($a = '', $b = '') { // var_dump($this); echo 'handler3 fired with parameters "' . $a . '" and "' . $b . '"<br />'; }, 'handler4' => function($a = '', $b = '') { // var_dump($this); echo 'handler4 fired with parameters "' . $a . '" and "' . $b . '"<br />'; } ]; // Create an instance of the Event_Emitter class $emitter = Event_Emitter::factory(); // Add your event handlers to your Event_Emitter instance for the 'go' event. $emitter->addListeners('go', $eventHandlers); // Emit the 'go' event, with parameters 'FOO' and 1. $emitter->emit('go', 'FOO', 1); // Remove the second event handler for the 'go' event $emitter->removeListener('go', $eventHandlers['handler2']); // Remove ALL listeners for the 'go' event $emitter->removeAllListeners('go');
John slegers |
PHP PowerTools Event Component
MIT