需要在Symfony2中登录的页面的URL

时间:2012-07-31 09:33:02

标签: symfony

我有一个Symfony2网站,我想在登录页面上显示额外信息,具体取决于用户尝试访问的URL。我正在使用“use_forward”。有没有办法在登录表单的控制器中查看URL?

我想我可以设置多个防火墙指向不同的登录页面,但可能会有相当多的防火墙,所以我宁愿避免这样做。

2 个答案:

答案 0 :(得分:2)

如果你想要“正确”的话,请查看this question的答案。

OR

如果你想快速而又脏,你可以使用:

$this->container->get('request')->server->get('PHP_SELF');

Whick将产生类似/project_name/web/app_dev.php/controller_name/的内容,您可以使用该字符串,但考虑到它会根据您正在处理的环境而改变。 Request class documentation将成为你的盟友,即:

$this->container->get('request')->getBasePath()

会给你/project_name/web/

答案 1 :(得分:0)

您可以尝试在某些地方查找此网址:

$url = $request->get('_referer');

如果为空,则可以尝试检查标题

$url = $request->headers->get('Referer');