...
Code Block |
---|
language | php |
---|
title | /app/controllers/my_controller.php |
---|
firstline | 1 |
---|
linenumbers | true |
---|
|
<?php
class MyController extends AppController {
public function index() {
$this->Events->register("EventName", array($this, "callbackMethod"));
$event = new EventObject("EventName", array("square", "pink"));
$this->Events->trigger($event);
return false; // don't render a view
}
public function callbackMethod(EventObject $event) {
$params = $event->getParams();
echo $params[0] . " " . $params[1];
}
}
?> |
Returning Data From an Event
The EventObject passed to each event callback contains setters and getters for both parameters (as seen above when Triggering an Event), and return values. Expanding on the example above, we can set our return value using the EventObject::setReturnVal() method. This will output "square".
Code Block |
---|
language | php |
---|
title | /app/controllers/my_controller.php |
---|
firstline | 1 |
---|
linenumbers | true |
---|
|
<?php
class MyController extends AppController {
public function index() {
$this->Events->register("EventName", array($this, "callbackMethod"));
$event = new EventObject("EventName", array("square", "pink"));
$event = $this->Events->trigger($event);
echo $event->getReturnVal();
return false; // don't render a view
}
public function callbackMethod(EventObject $event) {
$params = $event->getParams();
$event->setReturnVal($params[0]);
}
}
?> |