elise / events
Event Manager
Requires
- php: >=5.5.0
Requires (Dev)
- phpunit/phpunit: ~4.1
This package is not auto-updated.
Last update: 2025-07-05 22:00:21 UTC
README
Installation
The package is available on Packagist. You can install it using Composer.
composer require elise/events dev-master
require_once("vendor/autoload.php"); use elise\events\Manager as EventManager;
Manual
###Initial
$manager = new EventManager;
###Option
//Priorities enable $manager->priority(true); //Response enable $manager->response(true); //Getting responses $manager->getResponses();//return array
###Listeners ####Create listener closure
$manager->on("db:connect", function($event){ echo "DB Connected"; if ($event->isCancelable() === true) { $event->stop(); } return "#1"; }, EventManager::NORMAL);
####Create listener class
class DbEvent { public function connect($event, $source, $data) { echo "DB Connected"; if ($event->isCancelable() === true) { $event->stop(); } return "#2"; } } $manager->on("db",new Db);
$manager->on($eventType,$listener,$priority);
#####on
parameters
$eventType
- Event name
$listener
- Listener object or closure
$priority
- Priority runing event
#####Priority variants
- EventManager::LOW
- EventManager::NORMAL
- EventManager::HIGH
- any integer
#####listener
parameters
$event
- object event
$soruce
- object calling or null
$data
- object calling data (array)
###Event ####Lazy
$manager->run("db:connect");
####Full
class Db { function connect() { $manager->run("db:connect", $this, array(), false); } }
#####run
parameters
$manager->run($eventType, $source, $data, $cancelabe);
$eventType
- name running event
$soruce
- Calling class object or null
$data
- data setting event listener
$cancelable
- is canceling event
####Allowed
//Local disable $manager->allowedListeners("db:connect",false); //Global disable $manager->allowedListeners("db",false);
####Methods
###Dettach
$manager->dettch("db"); //or $manager->detach("db");
###Has listeners
$manager->hasListeners("db"); //return bool
###Get Listeners
$manager->getListeners("db");//return array