首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在zend框架中获取用户ip地址

在zend框架中获取用户ip地址
EN

Stack Overflow用户
提问于 2013-04-10 02:33:28
回答 3查看 20.3K关注 0票数 18

如何在Zend-Framework2中获取客户端的IP地址?在普通的PHP中应该是$_SERVER‘’REMOTE_ADDR‘,但是也许smart Zend是函数?

有什么想法吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-04-10 02:57:26

ZF2中的请求对象具有名为getServer的方法。此方法返回一个实现\Zend\Stdlib\ParametersInterface的对象。有了这个特定的对象,您可以从$_SERVER变量中获取任何内容。

下面是两个如何使用方法和对象的示例:

代码语言:javascript
复制
<?php 
    // Getting the entire params object
    $servParam = $request->getServer();
    $remoteAddr = $servParam->get('REMOTE_ADDR');

    // Getting specific variable
    $remoteAddr = $request->getServer('REMOTE_ADDR');
?>
票数 29
EN

Stack Overflow用户

发布于 2013-04-10 04:37:08

您可以使用Zend\Http\PhpEnvironment\RemoteAddress类来获取客户端ip地址。

代码语言:javascript
复制
$remote = new Zend\Http\PhpEnvironment\RemoteAddress;
echo $remote->getIpAddress();

参见http://framework.zend.com/apidoc/2.1/classes/Zend.Http.PhpEnvironment.RemoteAddress.html

备注:

要启用对标头HTTP_X_FORWARDED_FOR的检查,请打开setUseProxy()

代码语言:javascript
复制
$remote->setUseProxy()->getIpAddress();
票数 31
EN

Stack Overflow用户

发布于 2013-04-10 02:41:08

大秘密:

代码语言:javascript
复制
$_SERVER['REMOTE_ADDR']

不要重复已经很简单的东西!

票数 -13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15909827

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档