1. Go to this page and download the library: Download systream/event-dispatcher library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
systream / event-dispatcher example snippets
$eventDispatcher = new EventDispatcher();
$subscription = new EventDispatcher\Subscription('nameOfEvent', function (EventInterface $event) {
// do stuff here
});
$eventDispatcher->subscribe($subscription);
$eventDispatcher = new EventDispatcher();
$eventDispatcher->emit(new EventDispatcher\Event('nameOfEvent'));
$eventDispatcher = new EventDispatcher();
$subscription = new EventDispatcher\Subscription('fooBar', function (EventDispatcher\EventInterface $event) {
$event->stopPropagation();
});
$eventDispatcher->subscribe($subscription);
$subscription2 = new EventDispatcher\Subscription('fooBar', function (EventDispatcher\EventInterface $event) {
// do stuff here
});
$eventDispatcher->subscribe($subscription2);
$eventDispatcher->emit(new EventDispatcher\Event('fooBar'));
class MyCustomEvent extends AbstractEvent implements EventInterface
{
/**
* @var string
*/
protected $key = 'order.save';
/**
* @var Order
*/
protected $order;
/**
* @param string $key
*/
public function __construct(Order $order)
{
$this->order = $order;
}
/**
* @return Order
*/
public function getOrder()
{
return $this->order;
}
}
...
$eventDispatcher = new EventDispatcher();
$subscription = new EventDispatcher\Subscription('nameOfEvent', function (OrderEvent $event) {
$order = $orderEvent->getOrder();
// do stuff
});
$eventDispatcher->subscribe($subscription);
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.