php如何获取客户端IP地址

php获取客户端IP地址的几种方法
阅读php获取客户端IP地址的几种方法,
<?php
$iipp=$_SERVER["REMOTE_ADDR"];
echo $iipp;
?>  

<?php
$user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"];
$user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"];
echo $user_IP;
?>  

<?php
function get_real_ip(){
$ip=false;
if(!empty($_SERVER["HTTP_CLIENT_IP"])){
$ip = $_SERVER["HTTP_CLIENT_IP"];
}
if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ips = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
if ($ip) { array_unshift($ips, $ip); $ip = FALSE; }
for ($i = 0; $i < count($ips); $i++) {
if (!eregi ("^(10|172\.16|192\.168)\.", $ips[$i])) {
$ip = $ips[$i];
break;
}
}
}
return ($ip ? $ip : $_SERVER['REMOTE_ADDR']);
}  

echo get_real_ip();
?>  

<?php
//php获取ip的算法
//URL:http://www.bianceng.cn/webkf/PHP/201410/45962.htm
if ($HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"])
{
$ip = $HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"];
}
elseif ($HTTP_SERVER_VARS["HTTP_CLIENT_IP"])
{
$ip = $HTTP_SERVER_VARS["HTTP_CLIENT_IP"];
}
elseif ($HTTP_SERVER_VARS["REMOTE_ADDR"])
{
$ip = $HTTP_SERVER_VARS["REMOTE_ADDR"];
}
elseif (getenv("HTTP_X_FORWARDED_FOR"))
{
$ip = getenv("HTTP_X_FORWARDED_FOR");
}
elseif (getenv("HTTP_CLIENT_IP"))
{
$ip = getenv("HTTP_CLIENT_IP");
}
elseif (getenv("REMOTE_ADDR"))
{
$ip = getenv("REMOTE_ADDR");
}
else
{
$ip = "Unknown";
}
echo "你的IP:".$ip ;
?>  

<?php
if(getenv('HTTP_CLIENT_IP')) {
$onlineip = getenv('HTTP_CLIENT_IP');
} elseif(getenv('HTTP_X_FORWARDED_FOR')) {
$onlineip = getenv('HTTP_X_FORWARDED_FOR');
} elseif(getenv('REMOTE_ADDR')) {
$onlineip = getenv('REMOTE_ADDR');
} else {
$onlineip = $HTTP_SERVER_VARS['REMOTE_ADDR'];
}
echo $onlineip;
?>  

<?php
function getIP() /*获取客户端IP*/
{
if (@$_SERVER["HTTP_X_FORWARDED_FOR"])
$ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
else if (@$_SERVER["HTTP_CLIENT_IP"])
$ip = $_SERVER["HTTP_CLIENT_IP"];
else if (@$_SERVER["REMOTE_ADDR"])
$ip = $_SERVER["REMOTE_ADDR"];
else if (@getenv("HTTP_X_FORWARDED_FOR"))
$ip = getenv("HTTP_X_FORWARDED_FOR");
else if (@getenv("HTTP_CLIENT_IP"))
$ip = getenv("HTTP_CLIENT_IP");
else if (@getenv("REMOTE_ADDR"))
$ip = getenv("REMOTE_ADDR");
else
$ip = "Unknown";
return $ip;
}  

echo getip();
?>  

1:来看看代码:  

  echo "(1)浏览当前页面的用户的 IP 地址为:";  

  echo $_SERVER['REMOTE_ADDR'];  

  echo "";  

  echo "(2)浏览当前页面的用户的 IP 地址为:";  

  echo getenv('REMOTE_ADDR');  

  echo "";  

  echo "主机 www.baidu.com 的 IP 地址为:";  

  echo gethostbyname(www.baidu.com);  

2:它的输出结果为:  

  (1)浏览当前页面的用户的 IP 地址为:127.0.0.1  

  (2)浏览当前页面的用户的 IP 地址为:127.0.0.1  

  主机 www.baidu.com 的 IP 地址为:61.135.169.105  

3:关于获取客户端的 IP 地址,有俩方法:  

  第一个是使用:  

  $_SERVER['REMOTE_ADDR']  

  它正在浏览当前页面用户的 IP 地址,这里的输出结果为 127.0.0.1,因为这是在本地测试,输出的是我本地的环路地址。  

  第俩个是使用:  

  getenv('REMOTE_ADDR')  

  这里使用了函数 getenv : Gets the value of an environment variable(得到各种环境变量的值),返回值:Returns the value of the environment variable varname, or FALSE on an error(失败的话返回 FALSE).  

4:关于获取服务器端的 IP 地址:  

  gethostbyname(www.baidu.com)  

  这里使用了函数 gethostbyname : Get the IP address corresponding to a given Internet host name(通过给定的一个主机名字而得到它的 IP 地址),返回值:Returns the IP address of the Internet host specified by hostname or a string containing the unmodified hostname on failure(失败的话返回原样的输入字符主机名).  

5:注意这里的最后一句,也就是说,如果失败的话,它会将原样输出,
例如:  
echo "无效主机 iwilldown 的 IP 地址为:";  
echo gethostbyname("iwilldown");  
输出无效主机 iwilldown 的 IP 地址为:iwilldown  当然,这个可不是 IP 地址….~~~~

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索ip
, echo
, 地址
, 主机
, 输出
, gethostbyname
, 获取ip地址
, 用户主机获取
, 获取客户端ip
, PHP获取IP地址
, 照片获取ip地址
, 获取用户地址
, php获取客户端ip
获取地址值
php 获取客户端ip地址、如何获取客户端ip地址、java获取客户端ip地址、js获取客户端ip地址、获取客户端ip地址,以便于您获取更多的相关知识。

时间: 2024-08-08 04:00:21

php如何获取客户端IP地址的相关文章

php-PHP网站获取客户端IP地址固定都是北京的

问题描述 PHP网站获取客户端IP地址固定都是北京的 我用PHP开发了一个网站,先放在了主机屋免费空间上进行测试,想获取访问的客户端 的IP,可是每次获取到的IP都一样. 解决方案 ip地址是不是你服务器的地址?如果是是防火墙的问题 REMOTE_ADDR得到服务器IP,非客户端的IP 解决方案二: 有可能是百度,搜狗,360等网络爬虫访问你的页面,他们无时无刻都在扫描网络中的网页,不要激动,骚年.

JS简单获取客户端IP地址的方法【调用搜狐接口】_javascript技巧

本文实例讲述了JS简单获取客户端IP地址的方法.分享给大家供大家参考,具体如下: <!doctype html> <html> <head> <meta charset="utf-8"> <title>使用搜狐接口获取客户端IP地址</title> </head> <body> <script src="http://pv.sohu.com/cityjson?ie=utf-8

ip网址怎么获取客户端ip地址

问题描述 比如地址是:1.51.23.111/index.aspx没有域名怎么获取客户端ip地址///<summary>///获取远程访问用户的Ip地址///</summary>///<returns>返回Ip地址</returns>protectedstringGetIps(){stringloginip="";//Request.ServerVariables[""]--获取服务变量集合if(Request.Ser

jsp获取客户端IP地址的方法_JSP编程

本文实例讲述了jsp获取客户端IP地址的方法.分享给大家供大家参考,具体如下: public static String getIpAddr(HttpServletRequest request) { String ip = request.getHeader("X-Forwarded-For"); if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { ip = request

JS获取客户端IP地址、MAC和主机名的7个方法汇总_javascript技巧

今天在搞JS(javascript)获取客户端IP的小程序,上网搜了下,好多在现在的系统和浏览器中的都无效,很无奈,在Chrome.FireFox中很少搞到直接利用ActiveX获取IP等的JS脚本.下面的代码是我在所有windowsNT5.0及以上的系统上都测试通过的,给出代码: 一.使用JS获取客户端IP的几个方法 方法一(只针对IE且客户端的IE允许AcitiveX运行,通过平台:XP,SERVER03,2000).获取客户端IP代码: 复制代码 代码如下: <HTML> <HEA

获取客户端ip地址二种方法(js,jquery)

利用jquery获取用户ip信息 $.getjson("http://jsonip.apps教程pot.com?callback=?",function(data){ alert( "你的ip:" + data.ip); }); 利用js获取用户ip地址信息 <html>        <head>    <meta http-equiv="content-type" content="text/html;

php获取客户端ip地址

//最简单的方法  代码如下 复制代码 $ip = $_server["remote_addr"]; echo $ip; //最实用获取用户ip地址代码  代码如下 复制代码 function get_real_ip()  {         $ip=false;         if(!empty($_server["http_client_ip"]))         {              $ip = $_server["http_client

用ASP获取客户端IP地址的方法

要想透过代理服务器取得客户端的真实IP地址,就要使用 Request.ServerVariables("HTTP_X_FORWARDED_FOR") 来读取.不过要注意的事,并不是每个代理服务器都能用 Request.ServerVariables("HTTP_X_FORWARDED_FOR") 来读取客户端的真实 IP,有些用此方法读取到的仍然是代理服务器的IP.还有一点需要注意的是:如果客户端没有通过代理服务器来访问,那么用 Request.ServerVari

c#客户端桌面应用如何模拟java的HttpServletRequest方法获取客户端ip地址

问题描述 如题目前想通过c#客户端桌面应用程序,实现通java方法中的HttpServletRequest的getHeader("Client-IP")或getRemoteAddr()方法,请问如何实现. 解决方案 解决方案二:自己顶一下!~~~~