php获取用户IPv4或IPv6地址的代码


Posted in PHP onNovember 15, 2012

其实这个很简单,只不过我一直想用 ipv6-test 的API做一个获取用户IP地址的东西……无奈JSON获取到的只是本机服务器的IP。算了,不研究了,何况人家提供的widget也挺好用的。谷歌了一下,找到这段代码,可以根据用户环境获取IP地址。

例如IPv6访问 www.shiwo.de 则获取到的是用户的IPv6地址

p.s 前提是网站做了A和AAAA解析

<?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; 
} 
?>
PHP 相关文章推荐
PHP执行zip与rar解压缩方法实现代码
Dec 05 PHP
php中的一些数组排序方法分享
Jul 20 PHP
php实现图片添加水印功能
Feb 13 PHP
PHP根据IP判断地区名信息的示例代码
Mar 03 PHP
PHP is_subclass_of函数的一个BUG和解决方法
Jun 01 PHP
php判断GIF图片是否为动画的方法
Sep 04 PHP
ThinkPHP字符串函数及常用函数汇总
Jul 18 PHP
CentOS下PHP安装Oracle扩展
Feb 15 PHP
关于扩展 Laravel 默认 Session 中间件导致的 Session 写入失效问题分析
Jan 08 PHP
PHP 记录访客的浏览信息方法
Jan 29 PHP
PHP基于mcript扩展实现对称加密功能示例
Feb 21 PHP
PHP实现简易用户登录系统
Jul 10 PHP
屏蔽机器人从你的网站搜取email地址的php代码
Nov 14 #PHP
PHP中文分词 自动获取关键词介绍
Nov 13 #PHP
PHP gbk环境下json_dencode传送来的汉字
Nov 13 #PHP
PHP漏洞全解(详细介绍)
Nov 13 #PHP
thinkphp3.0 模板中函数的使用
Nov 13 #PHP
thinkPHP的Html模板标签使用方法
Nov 13 #PHP
PHP数组及条件,循环语句学习
Nov 11 #PHP
You might like
PHP编程过程中需要了解的this,self,parent的区别
2009/12/30 PHP
php使用function_exists判断函数可用的方法
2014/11/19 PHP
Yii核心组件AssetManager原理分析
2014/12/02 PHP
利用PHP脚本在Linux下用md5函数加密字符串的方法
2015/06/29 PHP
php+jQuery+Ajax简单实现页面异步刷新
2016/08/08 PHP
非主流的textarea自增长实现js代码
2011/12/20 Javascript
javascript跟随滚动效果插件代码(javascript Follow Plugin)
2013/08/03 Javascript
DeviceOne 让你一见钟情的App快速开发平台
2016/02/17 Javascript
getElementById().innerHTML与getElementById().value的区别
2016/10/27 Javascript
深入理解javascript的getTime()方法
2017/02/16 Javascript
JavaScript实现删除数组重复元素的5种常用高效算法总结
2018/01/18 Javascript
[原创]jQuery实现合并/追加数组并去除重复项的方法
2018/04/11 jQuery
从vue源码解析Vue.set()和this.$set()
2018/08/30 Javascript
Angular8 Http拦截器简单使用教程
2019/08/20 Javascript
vue配置nprogress实现页面顶部进度条
2019/09/21 Javascript
[04:19]DOTA2完美大师赛第四天精彩集锦
2017/11/26 DOTA
Windows系统下安装Python的SSH模块教程
2015/02/05 Python
浅谈Python中copy()方法的使用
2015/05/21 Python
Python3中类、模块、错误与异常、文件的简易教程
2017/11/20 Python
Python线程创建和终止实例代码
2018/01/20 Python
Python语言的变量认识及操作方法
2018/02/11 Python
Python3中正则模块re.compile、re.match及re.search函数用法详解
2018/06/11 Python
python多线程同步之文件读写控制
2021/02/25 Python
办公室年终个人自我评价
2013/10/28 职场文书
营业员实习自我鉴定
2013/12/07 职场文书
户外亲子活动策划方案
2014/02/07 职场文书
服务员岗位责任制
2014/02/11 职场文书
数控专业毕业生自荐信范文
2014/03/04 职场文书
医学生就业推荐表自我鉴定
2014/03/26 职场文书
护士年终考核评语
2014/12/31 职场文书
2016年寒假社会实践活动总结
2015/03/27 职场文书
警示教育观后感
2015/06/17 职场文书
超市啤酒狂欢夜策划方案范文!
2019/07/03 职场文书
redis三种高可用方式部署的实现
2021/05/11 Redis
每日六道java新手入门面试题,通往自由的道路
2021/06/30 Java/Android
mysql 索引合并的使用
2021/08/30 MySQL