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中0,null,empty,空,false,字符串关系的详细介绍
Jun 20 PHP
如何使用PHP获取指定日期所在月的开始日期与结束日期
Aug 01 PHP
浅谈php的优缺点
Jul 14 PHP
PHP和MySql中32位和64位的整形范围是多少
Feb 18 PHP
Yii2增加验证码步骤详解
Apr 25 PHP
修改yii2.0用户登录使用的user表为其它的表实现方法(推荐)
Aug 01 PHP
[原创]PHP实现字节数Byte转换为KB、MB、GB、TB的方法
Aug 31 PHP
PHP静态延迟绑定和普通静态效率的对比
Oct 20 PHP
PHP实现负载均衡的加权轮询方法分析
Aug 22 PHP
laravel model模型定义实现开启自动管理时间created_at,updated_at
Oct 17 PHP
thinkphp5 模型实例化获得数据对象的教程
Oct 18 PHP
php操作redis命令及代码实例大全
Nov 19 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
让PHP以ROOT权限执行系统命令的方法
2011/02/10 PHP
php下通过curl抓取yahoo boss 搜索结果的实现代码
2011/06/10 PHP
利用中国天气预报接口实现简单天气预报
2014/01/20 PHP
PHPer 需要了解的 5 个 Composer 小技巧
2014/08/18 PHP
PHP面相对象中的重载与重写
2017/02/13 PHP
PHP中遍历数组的三种常用方法实例分析
2019/06/24 PHP
javascript+dom树型菜单类,希望朋友们一起进步
2007/05/03 Javascript
JS添加或修改控件的样式(Class)实现方法
2016/10/15 Javascript
JS中使用正则表达式g模式和非g模式的区别
2017/04/01 Javascript
Vue.js 2.0学习教程之从基础到组件详解
2017/04/24 Javascript
简单实现jquery隔行变色
2017/11/09 jQuery
解决Vue中mounted钩子函数获取节点高度出错问题
2018/05/18 Javascript
JavaScript canvas绘制圆弧与圆形
2020/02/18 Javascript
Python中统计函数运行耗时的方法
2015/05/05 Python
Python数据结构之单链表详解
2017/09/12 Python
Python Socket使用实例
2017/12/18 Python
python抓取京东小米8手机配置信息
2018/11/13 Python
对Pandas MultiIndex(多重索引)详解
2018/11/16 Python
Python3.5常见内置方法参数用法实例详解
2019/04/29 Python
解决pandas展示数据输出时列名不能对齐的问题
2019/11/18 Python
pycharm Tab键设置成4个空格的操作
2021/02/26 Python
使用CSS3配合IE滤镜实现渐变和投影的效果
2015/09/06 HTML / CSS
基于HTML5+Webkit实现树叶飘落动画
2017/12/28 HTML / CSS
canvas实现按住鼠标移动绘制出轨迹的示例代码
2018/02/05 HTML / CSS
数组越界问题
2015/10/21 面试题
中学生评语大全
2014/04/18 职场文书
幼儿园辞职书
2015/02/26 职场文书
单位综合评价意见
2015/06/05 职场文书
开学典礼观后感
2015/06/15 职场文书
学校运动会通讯稿
2015/07/18 职场文书
公司人事管理制度
2015/08/05 职场文书
外出听课学习心得体会
2016/01/15 职场文书
二手手机买卖合同范本(2019年版)
2019/10/28 职场文书
如何用JavaScript实现一个数组惰性求值库
2021/05/05 Javascript
详解Python生成器和基于生成器的协程
2021/06/03 Python
Python排序算法之插入排序及其优化方案详解
2021/06/11 Python