public function init()
 {
     $priority = 20;
     Messenger::getInstance()->subscribe('test', ['Subscriber3StaticClass', 'handler'], $priority, $this);
 }
Example #2
0
<?php

ini_set('display_errors', 1);
error_reporting(E_ALL);
include_once '../vendor/autoload.php';
use gigi\events\classes\Messenger;
$handler = Messenger::getInstance();
$handler->subscribe('message.test', function ($message) {
    // do something with message
    // stops further message processing
    $message->setIsHandled(true);
    $receivedData = $message->getData();
    // optionally return mixed response
    // Will be accessible in reply object (Message::getData())
    return 'Data to return';
});
use gigi\events\classes\Message;
$message = new Message('message.test', 'Mixed data to send');
// async notifier
//$handler->request($message);
// sync notifier
// Returns array of Messages
//$result = $handler->requestReply($message);
// sync notifier
// Returns only first reply (Message object)
$result = $handler->requestFirstReply($message);
echo '<pre>';
var_dump($result);
echo '</pre>';