Php Symfony 2.8:如何访问发送到onKernelResponse EventListener中查看的$data?
我已经为onKernelResponse创建了一个EventListener:Php Symfony 2.8:如何访问发送到onKernelResponse EventListener中查看的$data?,php,symfony,symfony-2.8,Php,Symfony,Symfony 2.8,我已经为onKernelResponse创建了一个EventListener: <?php namespace Webprogest\More\SharedBundle\EventListener; use Symfony\Component\HttpKernel\Event\GetResponseEvent; use Symfony\Component\HttpKernel\HttpKernel; use Symfony\Component\HttpKernel\HttpKe
<?php
namespace Webprogest\More\SharedBundle\EventListener;
use Symfony\Component\HttpKernel\Event\GetResponseEvent;
use Symfony\Component\HttpKernel\HttpKernel;
use Symfony\Component\HttpKernel\HttpKernelInterface;
use Symfony\Component\Security\Core\SecurityContextInterface;
use Symfony\Component\HttpFoundation\Session\Session;
use Symfony\Component\DependencyInjection\ContainerInterface;
use Symfony\Component\HttpKernel\Event\FilterResponseEvent;
class RequestListener
{
protected $sc;
private $container;
public function __construct(ContainerInterface $container)
{
$this->container = $container;
}
public function onKernelResponse(FilterResponseEvent $event)
{
$response = $event->getResponse();
var_dump($response);
}
}
我的问题是:当然,99%的事件都是在控制器执行之后,调用视图之前触发的。因此:如何访问发送到控制器上视图的$data数组?
感谢响应对象已经创建,所以您没有访问$data数组的权限。目标是什么?谢谢丹尼斯。基本上,我的事件侦听器函数在会话中记录用户访问的所有路由的列表,为每个路由存储路由名称、路由参数和自定义的用户友好标题。用户frieny标题已在控制器上生成,并通过$data数组发送到view。因此,与其在事件侦听器中再次生成它,我希望tl从控制器中读取它。。。
kernel.listener.your_listener_name:
class: Webprogest\More\SharedBundle\EventListener\RequestListener
arguments: ["@service_container"]
tags:
- { name: kernel.event_listener, event: kernel.request, method: onKernelRequest }
- { name: kernel.event_listener, event: kernel.response, method: onKernelResponse }