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调用三种数据库的方法(3)
Oct 09 PHP
php中拷贝构造函数、赋值运算符重载
Jul 25 PHP
php查找任何页面上的所有链接的方法
Dec 03 PHP
php单态设计模式(单例模式)实例
Nov 18 PHP
PHP内存缓存Memcached类实例
Dec 08 PHP
浅谈PHP中JSON数据操作
Jul 01 PHP
PHP加密技术的简单实现
Sep 04 PHP
php 从一个数组中随机的取出若干个不同的数实例
Dec 31 PHP
PHP计算近1年的所有月份
Mar 13 PHP
可兼容php5与php7的cURL文件上传功能实例分析
May 11 PHP
ThinkPHP框架整合微信支付之JSAPI模式图文详解
Apr 09 PHP
详解如何实现Laravel的服务容器的方法示例
Apr 15 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与C#的值类型指向区别的详解
2013/05/21 PHP
php使用exec shell命令注入的方法讲解
2013/11/12 PHP
PHP解析html类库simple_html_dom的转码bug
2014/05/22 PHP
利用PHP函数计算中英文字符串长度的方法
2014/11/11 PHP
php原生导出excel文件的两种方法(推荐)
2016/11/19 PHP
PHPMailer ThinkPHP实现自动发送邮件功能
2018/06/10 PHP
php使用redis的有序集合zset实现延迟队列应用示例
2020/02/20 PHP
php设计模式之正面模式实例分析【星际争霸游戏案例】
2020/03/24 PHP
Document 对象的常用方法
2009/07/31 Javascript
Jquery选择子控件&quot;大于号&quot;和&quot; &quot;区别介绍及使用示例
2013/06/25 Javascript
解析JavaScript中delete操作符不能删除的对象
2013/12/03 Javascript
js字符串转换成数字与数字转换成字符串的实现方法
2014/01/08 Javascript
node.js中的fs.symlinkSync方法使用说明
2014/12/15 Javascript
javascript验证身份证号
2015/03/03 Javascript
jQuery实现只允许输入数字和小数点的方法
2016/03/02 Javascript
bootstrapfileinput实现文件自动上传
2016/11/08 Javascript
ionic进入多级目录后隐藏底部导航栏(tabs)的完美解决方案
2016/11/23 Javascript
浅谈angular2 组件的生命周期钩子
2017/08/12 Javascript
Vue自定义事件(详解)
2017/08/19 Javascript
jQuery实现左右滑动的toggle方法
2018/03/03 jQuery
ES6 系列之 WeakMap的使用示例
2018/08/06 Javascript
JavaScript this在函数中的指向及实例详解
2019/10/14 Javascript
[01:10]3.19DOTA2发布会 三代刀塔人第一代
2014/03/25 DOTA
[01:03:41]完美世界DOTA2联赛PWL S3 DLG vs Phoenix 第一场 12.17
2020/12/19 DOTA
Python使用logging结合decorator模式实现优化日志输出的方法
2016/04/16 Python
Pyspark获取并处理RDD数据代码实例
2020/03/27 Python
pip 20.3 新版本发布!即将抛弃 Python 2.x(推荐)
2020/12/16 Python
CSS3之2D与3D变换的实现方法
2019/01/28 HTML / CSS
HTML5 SEO优化的一些建议
2020/08/27 HTML / CSS
凯特·丝蓓英国官网:Kate Spade英国
2016/11/07 全球购物
应届生高等护理求职信
2013/10/12 职场文书
《中华少年》教学反思
2014/02/15 职场文书
十八届三中全会宣传方案
2014/02/21 职场文书
教你怎么用Python实现GIF动图的提取及合成
2021/06/15 Python
Vue操作Storage本地化存储
2022/04/29 Vue.js
如何Tomcat中使用ipv6地址
2022/05/06 Servers