如何在Zend-Framework2中获取客户端的IP地址?在普通的PHP中应该是$_SERVER‘’REMOTE_ADDR‘,但是也许smart Zend是函数?
有什么想法吗?
发布于 2013-04-10 02:57:26
ZF2中的请求对象具有名为getServer的方法。此方法返回一个实现\Zend\Stdlib\ParametersInterface的对象。有了这个特定的对象,您可以从$_SERVER变量中获取任何内容。
下面是两个如何使用方法和对象的示例:
<?php
// Getting the entire params object
$servParam = $request->getServer();
$remoteAddr = $servParam->get('REMOTE_ADDR');
// Getting specific variable
$remoteAddr = $request->getServer('REMOTE_ADDR');
?>发布于 2013-04-10 04:37:08
您可以使用Zend\Http\PhpEnvironment\RemoteAddress类来获取客户端ip地址。
$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()
$remote->setUseProxy()->getIpAddress();发布于 2013-04-10 02:41:08
大秘密:
$_SERVER['REMOTE_ADDR']不要重复已经很简单的东西!
https://stackoverflow.com/questions/15909827
复制相似问题