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 相关文章推荐
如何使用PHP获取网络上文件
Oct 09 PHP
php,ajax实现分页
Mar 27 PHP
php中使用Akismet防止垃圾评论的代码
Jun 10 PHP
PHP下打开phpMyAdmin出现403错误的问题解决方法
May 23 PHP
如何判断php数组的维度
Jun 10 PHP
zf框架db类的分页示例分享
Mar 14 PHP
PHP临时文件的安全性分析
Jul 04 PHP
PHP面向对象程序设计之接口用法
Aug 20 PHP
ThinkPHP中RBAC类的四种用法分析
Nov 24 PHP
php+jQuery.uploadify实现文件上传教程
Dec 26 PHP
Yii2实现同时搜索多个字段的方法
Aug 10 PHP
PHP实现简单的计算器
Aug 28 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的类树(支持无限分类)
2006/10/09 PHP
PHP设计模式之解释器模式的深入解析
2013/06/13 PHP
php+ajax导入大数据时产生的问题处理
2014/06/11 PHP
php简单socket服务器客户端代码实例
2015/05/18 PHP
Prototype使用指南之form.js
2007/01/10 Javascript
asp.net 30分钟掌握无刷新 Repeater
2011/09/16 Javascript
jQuery在IE下使用未闭合的xml代码创建元素时的Bug介绍
2012/01/10 Javascript
自定义右键属性覆盖浏览器默认右键行为实现代码
2013/02/02 Javascript
JS+css 图片自动缩放自适应大小
2013/08/08 Javascript
js实现点击后将文字或图片复制到剪贴板的方法
2014/08/04 Javascript
使用angular写一个hello world
2015/01/23 Javascript
理解javascript函数式编程中的闭包(closure)
2016/03/08 Javascript
Nodejs如何复制文件
2016/03/09 NodeJs
在IE8上JS实现combobox支持拼音检索功能
2016/05/23 Javascript
微信小程序 wxapp内容组件 progress详细介绍
2016/10/31 Javascript
Bootstrap CSS组件之大屏幕展播
2016/12/17 Javascript
解析jquery easyui tree异步加载子节点问题
2017/03/08 Javascript
angular基于ng-alain定义自己的select组件示例
2018/02/23 Javascript
实例详解ztree在vue项目中使用并且带有搜索功能
2018/08/24 Javascript
eslint 的三大通用规则详解
2019/05/16 Javascript
详解在IDEA中将Echarts引入web两种方式(使用js文件和maven的依赖导入)
2020/07/11 Javascript
Django 路由控制的实现
2019/07/17 Python
Django自定义用户表+自定义admin后台中的字段实例
2019/11/18 Python
使用Matplotlib 绘制精美的数学图形例子
2019/12/13 Python
Pytorch 使用CNN图像分类的实现
2020/06/16 Python
Python爬虫抓取指定网页图片代码实例
2020/07/24 Python
世界著名的顶级牛排:Omaha Steak(奥马哈牛排)
2016/09/20 全球购物
澳大利亚头发和美容产品购物网站:OZ Hair & Beauty
2020/03/27 全球购物
聚美优品的广告词
2014/03/14 职场文书
二年级学生评语大全
2014/04/23 职场文书
班组长安全工作职责
2014/07/15 职场文书
庆六一文艺汇演活动方案
2014/08/26 职场文书
大学团日活动新闻稿
2014/09/10 职场文书
小学生竞选班干部演讲稿(5篇)
2014/09/12 职场文书
四年级作文之植物
2019/09/20 职场文书
CSS 一行代码实现头像与国旗的融合
2021/10/24 HTML / CSS