在Symfony2中获取客户端IP

时间:2015-04-01 14:31:30

标签: php symfony

我搜索过,但似乎无法找到这个简单问题的答案:

如何强制symfony给我ipv4版本的用户ip,或者我错过了什么?

我可以同时获得ipv4和ipv6吗?

由于

编辑:我的问题是不同的,因为我不是想要获取任何IP,我知道函数getClientIP(这就是它在标题中的原因),我希望函数返回ip的ipv4和ipv6版本。 (或任何功能,任何获得两者的方式,ipv4和ipv6)

Edit2:这就是我现在获取ip的方式:

public function getUserIp()
{
    return $this->request->getClientIp();
}

并且它独占返回ipv6。 (此功能从我自己的UserManager内部运行,通过将事件插入控制器进入部分symfony管道,在每次调用时检查并更新当前用户)

1 个答案:

答案 0 :(得分:4)

如果用户使用IPv6连接,则无法显示IPv4地址,反之亦然。您始终只能获得一个版本的IP。