[英]Take GET-parameter from any place of application (Symfony2)
I'm new in Symfony, but I see that it's very good framework. 我是Symfony的新手,但我看到它是一个非常好的框架。 Now I'm working with Yii and some moments in Symfony can't understand... Sorry)
现在,我正在与Yii合作,Symfony中的某些时间无法理解...(抱歉)
How can I take GET-parameter from any controller (for example ?ref=), processing it parameter (save REF ID in session) and return current user for current page but without this GET-parameter? 如何从任何控制器中获取GET参数(例如?ref =),对其进行处理(在会话中保存REF ID)并返回当前页面的当前用户但没有此GET参数?
kernel.request
event. kernel.request
事件的事件侦听器 。 Return a redirect response to the very same URL but without ref
parameter: 将重定向响应返回到相同的URL,但不带
ref
参数:
public function onKernelRequest(GetResponseEvent $event) { if (!$event->isMasterRequest()) { return; } if (!$event->getRequest()->query->has('ref')) { return; } $ref = $event->getRequest()->query->get('ref'); // do whatever you need $url = ...; // prepare redirect URL $event->setResponse(new RedirectResponse($url)); }
You need to use next construction: 您需要使用下一个构造:
http://example?ref=123
public function indexAction(Request $request)
{
$ref = $request->query->get('ref');
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.