The SendResponseEvent¶
The MVC layer of Zend Framework 2 also incorporates and utilizes a custom Zend\EventManager\Event
implementation located at Zend\Mvc\ResponseSender\SendResponseEvent. This event allows listeners to update the
response object, by setting headers and content.
The methods it defines are:
setResponse($response)getResponse()setContentSent()contentSent()setHeadersSent()headersSent()
Listeners¶
Currently, three listeners are listening to this event at different priorities based on which listener is used most.
| Class | Priority | Method Called | Description |
|---|---|---|---|
Zend\Mvc\SendResponseListener\PhpEnvironmentResponseSender |
-1000 | __invoke |
This is used in context of HTTP (this is the most often used). |
Zend\Mvc\SendResponseListener\ConsoleResponseSender |
-2000 | __invoke |
This is used in context of Console. |
Zend\Mvc\SendResponseListener\SimpleStreamResponseSender |
-3000 | __invoke |
Because all these listeners have negative priorities, adding your own logic to modify Response object is easy:
just add a new listener without any priority (it will default to 1) and it will always be executed first.
Triggerers¶
This event is executed when MvcEvent::FINISH event is triggered, with a priority of -10000.