PHP根据IP判断地区名信息的示例代码


Posted in PHP onMarch 03, 2014

看代码

<?php 
header("Content-type: text/html; charset=utf-8"); 
function getIP(){ 
if (isset($_SERVER)) { 
if (isset($_SERVER[HTTP_X_FORWARDED_FOR])) { 
$realip = $_SERVER[HTTP_X_FORWARDED_FOR]; 
} elseif (isset($_SERVER[HTTP_CLIENT_IP])) { 
$realip = $_SERVER[HTTP_CLIENT_IP]; 
} else { 
$realip = $_SERVER[REMOTE_ADDR]; 
} 
} else { 
if (getenv("HTTP_X_FORWARDED_FOR")) { 
$realip = getenv( "HTTP_X_FORWARDED_FOR"); 
} elseif (getenv("HTTP_CLIENT_IP")) { 
$realip = getenv("HTTP_CLIENT_IP"); 
} else { 
$realip = getenv("REMOTE_ADDR"); 
} 
} 
return $realip; 
} $ip = getIP(); 
// 利用新浪接口根据ip查询所在区域信息 
/* $res0 = file_get_contents("http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=$ip"); 
$res0 = json_decode($res0); 
print_r($res0); 
echo "<br />"; */ 
// 利用淘宝接口根据ip查询所在区域信息 
$res1 = file_get_contents("http://ip.taobao.com/service/getIpInfo.php?ip=$ip"); 
$res1 = json_decode($res1); 
/* print_r($res1); */

如何读取数据, 看下面。
$array = get_object_vars($res1);//赋值给数组 
foreach($array as $value){ 
echo $value->region."<br />"; 
echo $value->city."<br />"; 
echo $value->ip."<br />"; 
} 
?> //或者用对象数据访问 echo $res1->data->city;
PHP 相关文章推荐
php下连接mssql2005的代码
Jan 17 PHP
PHP file_get_contents设置超时处理方法
Sep 30 PHP
php统计文章排行示例
Mar 04 PHP
php setcookie函数的参数说明及其用法
Apr 20 PHP
php事务处理实例详解
Jul 11 PHP
php封装好的人民币数值转中文大写类
Dec 20 PHP
关于PHP文件的自动运行方法分析
May 13 PHP
php英文单词统计器
Jun 23 PHP
thinkPHP多域名情况下使用memcache方式共享session数据的实现方法
Jul 21 PHP
[原创]php正则删除img标签的方法示例
May 27 PHP
win10 apache配置虚拟主机后localhost无法使用的解决方法
Jan 27 PHP
ThinkPHP3.2框架自定义配置和加载用法示例
Jun 14 PHP
使用php清除bom示例
Mar 03 #PHP
设置php页面编码的两种方法示例介绍
Mar 03 #PHP
php ci框架中加载css和js文件失败的解决方法
Mar 03 #PHP
php switch语句多个值匹配同一代码块的实现
Mar 03 #PHP
php获取字段名示例分享
Mar 03 #PHP
Drupal7连接多个数据库及常见问题解决
Mar 02 #PHP
Drupal读取Excel并导入数据库实例
Mar 02 #PHP
You might like
Ubuntu中启用php的mail()函数并解决发送邮件速度慢问题
2015/03/27 PHP
PHP实现RSA签名生成订单功能【支付宝示例】
2017/06/06 PHP
javascript Object与Function使用
2010/01/11 Javascript
jquery入门—访问DOM对象方法
2013/01/07 Javascript
jquery获取table中的某行全部td的内容方法
2013/03/08 Javascript
js判断鼠标同时离开两个div的思路及代码
2013/05/31 Javascript
js报$ is not a function 的问题的解决方法
2014/01/20 Javascript
2014年最火的Node.JS后端框架推荐
2014/10/27 Javascript
JS与jQuery遍历Table所有单元格内容的方法
2015/12/07 Javascript
BootStrap Validator对于隐藏域验证和程序赋值即时验证的问题浅析
2016/12/01 Javascript
node.js平台下利用cookie实现记住密码登陆(Express+Ejs+Mysql)
2017/04/26 Javascript
基于JavaScript实现弹幕特效
2020/08/27 Javascript
详解基于vue-cli优化的webpack配置
2017/11/06 Javascript
基于vue 动态加载图片src的解决方法
2018/02/05 Javascript
webpack dll打包重复问题优化的解决
2018/10/10 Javascript
详解vue-cli3多环境打包配置
2019/03/28 Javascript
解决layui富文本编辑器图片上传无法回显的问题
2019/09/18 Javascript
Vue 数据绑定的原理分析
2020/11/16 Javascript
Python动态生成多维数组的方法示例
2018/08/09 Python
Python的argparse库使用详解
2018/10/09 Python
简单了解Python生成器是什么
2019/07/02 Python
numpy.random.shuffle打乱顺序函数的实现
2019/09/10 Python
Python爬虫程序架构和运行流程原理解析
2020/03/09 Python
Python select及selectors模块概念用法详解
2020/06/22 Python
python 6种方法实现单例模式
2020/12/15 Python
如何使用canvas绘制可移动网格的示例代码
2020/12/14 HTML / CSS
介绍一下Transact-SQL中SPACE函数的用法
2015/09/01 面试题
关于安全的标语
2014/06/10 职场文书
2014个人四风对照检查材料思想汇报
2014/09/18 职场文书
婚礼双方父亲致辞
2015/07/27 职场文书
感恩教师主题班会
2015/08/12 职场文书
大学生入党自我鉴定范文
2019/06/21 职场文书
PHP使用非对称加密算法RSA
2021/04/21 PHP
java设计模式--原型模式详解
2021/07/21 Java/Android
JavaScript实现栈结构详细过程
2021/12/06 Javascript
python套接字socket通信
2022/04/01 Python