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.ini中文版(1)
Oct 09 PHP
我的论坛源代码(七)
Oct 09 PHP
杏林同学录(九)
Oct 09 PHP
用PHP为SHOPEX增加日志功能代码
Jul 02 PHP
第三章 php操作符与控制结构代码
Dec 30 PHP
基于PHP读取TXT文件向数据库导入海量数据的方法
Apr 23 PHP
php求正负数数组中连续元素最大值示例
Apr 11 PHP
php 批量查询搜狗sogou代码分享
May 17 PHP
Symfony2安装第三方Bundles实例详解
Feb 04 PHP
PHP的Yii框架中使用数据库的配置和SQL操作实例教程
Mar 17 PHP
yii2简单使用less代替css示例
Mar 10 PHP
php 文件上传至OSS及删除远程阿里云OSS文件
Jul 04 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作的文本留言本的例子(四)
2006/10/09 PHP
实例讲解PHP中使用命名空间
2019/01/27 PHP
laravel通过a标签从视图向控制器实现传值
2019/10/15 PHP
javascript Select标记中options操作方法集合
2008/10/22 Javascript
JS 非图片动态loading效果实现代码
2010/04/09 Javascript
js当一个变量为函数时 应该注意的一点细节小结
2011/12/29 Javascript
js拦截alert对话框另类应用
2013/01/16 Javascript
JQuery插件iScroll实现下拉刷新,滚动翻页特效
2014/06/22 Javascript
node.js中的fs.writeFile方法使用说明
2014/12/14 Javascript
Jquery实现textarea根据文本内容自适应高度
2015/04/03 Javascript
jquery遍历函数siblings()用法实例
2015/12/24 Javascript
JS如何设置cookie有效期为当天24点并弹出欢迎登陆界面
2016/08/04 Javascript
详解Javascript ES6中的箭头函数(Arrow Functions)
2016/08/24 Javascript
javascript实现根据函数名称字符串动态执行函数的方法示例
2016/12/28 Javascript
进阶之初探nodeJS
2017/01/24 NodeJs
angular 基于ng-messages的表单验证实例
2017/05/04 Javascript
Vue.js与 ASP.NET Core 服务端渲染功能整合
2017/11/16 Javascript
node打造微信个人号机器人的方法示例
2018/04/26 Javascript
菊花转动的jquery加载动画效果
2018/08/19 jQuery
vue实现文件上传读取及下载功能
2020/11/17 Javascript
使用vue打包进行云服务器上传的问题
2020/03/02 Javascript
Python yield使用方法示例
2013/12/04 Python
python中cPickle用法例子分享
2014/01/03 Python
Python入门篇之文件
2014/10/20 Python
python简单获取数组元素个数的方法
2015/07/13 Python
pandas 根据列的值选取所有行的示例
2018/11/07 Python
python 弹窗提示警告框MessageBox的实例
2019/06/18 Python
pycharm 实现本地写代码,服务器运行的操作
2020/06/08 Python
Araks官网:纽约内衣品牌
2020/10/15 全球购物
广州迈达威.net面试题目
2012/03/10 面试题
企业厂务公开实施方案
2014/03/26 职场文书
企业承诺书格式
2014/05/21 职场文书
党员争先创优承诺书
2015/01/20 职场文书
2015年员工工作表现评语
2015/03/25 职场文书
工程款申请报告
2015/05/15 职场文书
一个家长教育孩子的心得体会
2016/01/15 职场文书