php获取访问者IP地址汇总


Posted in PHP onApril 24, 2015

//方法1:

$ip = $_SERVER["REMOTE_ADDR"];
echo $ip;

//方法2:

$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;

//方法3:

function getRealIp()
{
  $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 getRealIp();

//方法4:

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 ;

//方法5:

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;

//方法6:

print "您的IP地址是:";


if(!empty($_SERVER["HTTP_CLIENT_IP"])){
 $cip = $_SERVER["HTTP_CLIENT_IP"];
}
elseif(!empty($_SERVER["HTTP_X_FORWARDED_FOR"])){
 $cip = $_SERVER["HTTP_X_FORWARDED_FOR"];
}
elseif(!empty($_SERVER["REMOTE_ADDR"])){
 $cip = $_SERVER["REMOTE_ADDR"];
}
else{
 $cip = "无法获取!";
}
print $cip;

以上所述就是本文的全部内容了,希望对大家学习php能够有所帮助。

PHP 相关文章推荐
Adodb的十个实例(清晰版)
Dec 31 PHP
Cakephp 执行主要流程
Mar 24 PHP
PHP中防止SQL注入实现代码
Feb 19 PHP
php学习笔记 面向对象中[接口]与[多态性]的应用
Jun 16 PHP
ThinkPHP写第一个模块应用
Feb 20 PHP
php获取网页标题和内容函数(不包含html标签)
Feb 03 PHP
强制PHP命令行脚本单进程运行的方法
Apr 15 PHP
php的mkdir()函数创建文件夹比较安全的权限设置方法
Jul 28 PHP
php实现按天数、星期、月份查询的搜索框
May 02 PHP
php封装的数据库函数与用法示例【参考thinkPHP】
Nov 08 PHP
thinkphp实现附件上传功能
May 26 PHP
PHP微信支付结果通知与回调策略分析
Jan 10 PHP
php实现的RSS生成类实例
Apr 23 #PHP
php利用事务处理转账问题
Apr 22 #PHP
ThinkPHP文件缓存类代码分享
Apr 22 #PHP
php文件下载处理方法分析
Apr 22 #PHP
php实现用手机关闭计算机(电脑)的方法
Apr 22 #PHP
解决ThinkPHP关闭调试模式时报错的问题汇总
Apr 22 #PHP
php文件缓存类用法实例分析
Apr 22 #PHP
You might like
PHP.MVC的模板标签系统(五)
2006/09/05 PHP
PHP insert语法详解
2008/06/07 PHP
Yii2.0表关联查询实例分析
2016/07/18 PHP
破解Session cookie的方法
2006/07/28 Javascript
关于js获取radio和select的属性并控制的代码
2011/05/12 Javascript
jQuery EasyUI API 中文文档 - Spinner微调器使用
2011/10/21 Javascript
基于jquery自定义图片热区效果
2012/07/21 Javascript
js图片自动轮播代码分享(js图片轮播)
2014/05/06 Javascript
javascript中为某个元素指定事件的三种方式
2014/08/07 Javascript
JQuery中使用Ajax赋值给全局变量失败异常的解决方法
2014/08/18 Javascript
jquery 全选、全不选、反选效果的实现代码【推荐】
2016/05/05 Javascript
浅谈jquery的map()和each()方法
2016/06/12 Javascript
微信小程序 css使用技巧总结
2017/01/09 Javascript
jQuery实现的简单拖动层示例
2017/02/22 Javascript
JavaScript登录记住密码操作(超简单代码)
2017/03/22 Javascript
JavaScript实现的开关灯泡点击切换特效示例
2019/07/08 Javascript
原生js实现的金山打字小游戏(实例代码详解)
2020/03/16 Javascript
JS Thunk 函数的含义和用法实例总结
2020/04/08 Javascript
JS运算符优先级与表达式示例详解
2020/09/04 Javascript
js实现拖拽与碰撞检测
2020/09/18 Javascript
Python检测QQ在线状态的方法
2015/05/09 Python
python3 实现调用串口功能
2019/12/26 Python
美国家喻户晓的保健品品牌:Vitamin World(维他命世界)
2016/08/19 全球购物
西班牙购买行李箱和背包网站:Maletas Greenwich
2019/10/08 全球购物
大学生求职简历的自我评价范文
2013/10/12 职场文书
服装采购员岗位职责
2014/03/15 职场文书
四下基层实施方案
2014/03/28 职场文书
毕业生就业协议书
2014/04/11 职场文书
《狼和小羊》教学反思
2014/04/20 职场文书
某某同志考察材料
2014/05/28 职场文书
实习单位指导教师评语
2014/12/30 职场文书
收银员岗位职责范本
2015/04/07 职场文书
大学生学生会工作总结2015
2015/05/26 职场文书
学生会干部任命书
2015/09/21 职场文书
解决WINDOWS电脑开机后桌面没有任何图标
2022/04/09 数码科技
Elasticsearch6.2服务器升配后的bug(避坑指南)
2022/09/23 Servers