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 相关文章推荐
PHP5多态性与动态绑定介绍
Apr 03 PHP
Linux系统递归生成目录中文件的md5的方法
Jun 29 PHP
什么是PEAR?什么是PECL?PHP中两个容易混淆的概念解释
Jul 01 PHP
php开发工具有哪五款
Nov 09 PHP
linux下为php添加iconv模块的方法
Feb 28 PHP
php处理带有中文URL的方法
Jul 11 PHP
php版微信开发Token验证失败或请求URL超时问题的解决方法
Sep 23 PHP
PHP基于GD库的图像处理方法小结
Sep 27 PHP
php文件上传及下载附带显示文件及目录功能
Apr 27 PHP
PHP getDocNamespaces()函数讲解
Feb 03 PHP
tp5(thinkPHP5框架)使用DB实现批量删除功能示例
May 28 PHP
浅谈laravel中的关联查询with的问题
Oct 10 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使用数组实现队列
2012/02/05 PHP
如何在Ubuntu下启动Apache的Rewrite功能
2013/07/05 PHP
PHP register_shutdown_function()函数的使用示例
2015/06/23 PHP
简明json介绍
2008/09/28 Javascript
defer属性导致引用JQuery的页面报“浏览器无法打开网站xxx,操作被中止”错误的解决方法
2010/04/27 Javascript
js 使FORM表单的所有元素不可编辑的示例代码
2013/10/17 Javascript
JS onmousemove鼠标移动坐标接龙DIV效果实例
2013/12/16 Javascript
jquery表单验证插件(jquery.validate.js)的3种使用方式
2015/03/28 Javascript
小议JavaScript中Generator和Iterator的使用
2015/07/29 Javascript
纯javascript模仿微信打飞机小游戏
2015/08/20 Javascript
canvas绘制七巧板
2017/02/03 Javascript
AngularJS 验证码60秒倒计时功能的实现
2017/06/05 Javascript
基于JavaScript实现微信抢红包功能
2017/07/20 Javascript
关于vue.js发布后路径引用的问题解决
2017/08/15 Javascript
vue+axios新手实践实现登陆的示例代码
2018/06/06 Javascript
原生JS实现留言板功能
2020/02/08 Javascript
vue项目里面引用svg文件并给svg里面的元素赋值
2020/08/17 Javascript
[03:22]DOTA2超级联赛专访单车:找到属于自己的英雄
2013/06/08 DOTA
[06:06]2018DOTA2亚洲邀请赛主赛事第四日战况回顾 全明星赛欢乐上演
2018/04/07 DOTA
浅谈django中的认证与登录
2016/10/31 Python
Python错误提示:[Errno 24] Too many open files的分析与解决
2017/02/16 Python
win10 64bit下python NLTK安装教程
2018/09/19 Python
python opencv读mp4视频的实例
2018/12/07 Python
python函数的万能参数传参详解
2019/07/26 Python
解决PyCharm IDE环境下,执行unittest不生成测试报告的问题
2020/09/03 Python
关于Python3的import问题(pycharm可以运行命令行import错误)
2020/11/18 Python
Html5页面二次分享的实现
2018/07/30 HTML / CSS
李维斯法国官网:Levi’s法国
2019/07/13 全球购物
Unineed中文官网:高端护肤美妆与时尚配饰,英国直邮
2020/07/23 全球购物
PHP如何自定义函数
2016/09/16 面试题
初中学生期末评语
2014/04/24 职场文书
工地质量标语
2014/06/12 职场文书
广播稿:校园广播稿范文
2019/04/17 职场文书
Python编程编写完善的命令行工具
2021/09/15 Python
MySQL优化常用的19种有效方法(推荐!)
2022/03/17 MySQL
《模拟人生4》推出新补丁 “婚礼奇缘”DLC终于得到修复
2022/04/03 其他游戏