腾讯的接口是 ,返回数组 http://fw.qq.com/ipaddress

返回值 var IPData = new Array("61.135.152.194","","北京市","");

 新浪的接口 : http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js 多地域测试方法:http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=218.192.3.42

返回值 var remote_ip_info = {"ret":1,"start":"218.192.0.0","end":"218.192.7.255","country":"\u4e2d\u56fd","province":"\u5e7f\u4e1c","city":"\u5e7f\u5dde","district":"","isp":"\u6559\u80b2\u7f51","type":"\u5b66\u6821","desc":"\u5e7f\u5dde\u5927\u5b66\u7eba\u7ec7\u670d\u88c5\u5b66\u9662"};

使用腾迅的api接口,php获取ip地址以及所在城市

http://fw.qq.com/ipaddress返回类似:var IPData = new Array("61.51.71.183","","北京市","");

 

代码

<?php
function get_ip_place(){
$ip=file_get_contents("http://fw.qq.com/ipaddress");
$ip=str_replace('"',' ',$ip);
$ip2=explode("(",$ip);
$a=substr($ip2[1],0,-2);
$b=explode(",",$a);
return $b;
}

$ip=get_ip_place();

print_r($ip);
?> 

代码测试地址:http://www.phpall.cn/forum/ci_data/ip_place.php 该代码须联网使用的,它使用了腾迅的一个api,即http://fw.qq.com/ipaddress 然后用php进行了一些简单的处理,使返回的结果用数组形式显示: 即Array ( [0] => 61.164.140.51 [1] => [2] => 浙江省 [3] => 温州市 ) 这样大家就可以很方便的通过数组索引来调用ip地址和所在的省市了。 希望对大家有用。

补充一点:在网上找到另外一种方法: 代码如下: $ip = $_SERVER['REMOTE_ADDR'];//这里的ip可以是你自定义的ip $geoInfo = get_meta_tags(http://www.geobytes.com/IpLocator.htm?GetLocation&template=php3.txt&IpAddress=$ip); /* 返回的数组信息如下,不过是英文版本的 Array  (  [known] => true //该IP地址是否可知,即是否有收录;  [locationcode] => CNGDGUAN //地址位置的代码,包含了国家、省份和城市;  [fips104] => CH //美国联邦信息处理标准的国家代码;  [iso2] => CN //iso2标准的国家代码;  [iso3] => CHN //iso标准的国家代码;  [ison] => 156 //用途未明  [internet] => CN //也是国家代码  [countryid] => 49 //国家ID;  [country] => China //国家名称;  [regionid] => 1361 //地区的id,即省份;  [region] => Guangdong //地区名称,即省份名称;  [regioncode] => GD //地区的代码或者缩写;  [adm1code] => CH30 //不清楚其含义;  [cityid] => 3539 //城市的ID;  [city] => Guangzhou //城市的名称;  [latitude] => 23.1170 //纬度;  [longitude] => 113.2500 //经度;  [timezone] => +08:00 //时区;  [certainty] => 78 //不清楚其含义;  ) */

原文:http://www.phpall.cn/forum/read.php?tid=411

另外封装的一个方法(一个朋友提供):

function address_baidu($ip) {     $u = "";     $address = file_get_contents(" http://open.baidu.com/ipsearch/s?wd={$ip}&tn=baiduip");     preg_match('#来自:<b>(.+)</b>#Ui', $address, $m);     return strval($m[1]); } function GetRemoteIp($default='127.0.0.1') {     $ip_string = $_SERVER['HTTP_CLIENT_IP'].','.$_SERVER['HTTP_X_FORWARDED_FOR'].','.$_SERVER['REMOTE_ADDR'];     if ( preg_match ("/\d+\.\d+\.\d+\.\d+/", $ip_string, $matches) )     {         return $matches[0];     }     return $default; } $ip = GetRemoteIp(); $addr = address_baidu($ip);

腾讯新浪通过IP地址获取当前地理位置(省份)的接口的更多相关文章

  1. 根据现有IP地址获取其地理位置(省份,城市等)的方法

    根据现有IP地址获取其地理位置(省份,城市等)的方法 function GetIpLookup($ip = ''){ if(empty($ip)){ return '请输入IP地址'; } $res ...

  2. 转载:腾讯与新浪的通过IP地址获取当前地理位置(省份)的接口

    腾讯的接口是 ,返回数组 http://fw.qq.com/ipaddress 返回值 var IPData = new Array("61.135.152.194"," ...

  3. IP地址获取当前地理位置(省份)的接口

    腾讯的接口是 ,返回数组 http://fw.qq.com/ipaddress 返回值 var IPData = new Array("61.135.152.194"," ...

  4. 通过ip地址获取当前地理位置

    1.  使用接口的方式: 这种方式是相对稳定,而且提供的数据相对稳定,提供接口的地方很多,大家可以参照 http://www.hujuntao.com/api/the-ip-address-api-a ...

  5. js根据ip地址获取城市地理位置

    一.使用js根据ip获取地址位置 <script src="http://pv.sohu.com/cityjson?ie=utf-8"></script>& ...

  6. android 根据网络来获取外网ip地址及国家,地区的接口

    新浪的IP地址查询接口:http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js 新浪多地域测试方法:http://int.dpool. ...

  7. JS 利用新浪接口通过IP地址获取当前所在城市

    <html xmlns="http://www.w3.org/1999/xhtml"><head runat="server">< ...

  8. php获取ip地址所在的地理位置的实现

    1,通过腾讯或者新浪提供的接口来获取(新浪和腾讯类似) <?php     function getIPLocation($queryIP){      $url = 'http://ip.qq ...

  9. 小工具-IP地址获取和设置及端口访问验证(windows)

    技术部在业务部门眼里就是后勤部门,业务部门要搬到新大楼去 领导要求去帮忙调试业务人员的电脑,要保证这些大爷们周一上班来,就喝着茶打开新浪,然后打开OA看看. 手上就几个桌面支持的兄弟,要弄一百台多电脑 ...

随机推荐

  1. AngularJS开发指南5:AngularJS表达式详解

    AngularJS表达式类似Javascript的代码片段,通常在数据绑定中用到,写在双大括号中,如:{{表达式}}.表达式是用$parse方法来处理的. 下面是一些合法的AngularJS表达式 1 ...

  2. C# 使用XML序列化对象(二)

    在C# 使用XML序列化对象(一)中描述了使用XML序列化对象的最简单的实现. 现在我们来看看稍微复杂一点的情况: 现有两个类:A和B,B是A的派生类,如下所示: public class A { p ...

  3. iOS -- 生成有logo的二维码

    - (void)createLogoImage { NSArray *filter = [CIFilter filterNamesInCategory:kCICategoryBuiltIn]; NSL ...

  4. 【转】】CTO、技术总监、首席架构师的区别

    经常有创业公司老板来拜访我,常常会拜托给我一句话:帮我找一个CTO. 我解释的多了,所以想把这个写下来,看看你到底需要的应该是啥. 一.高级程序员 如果你是一个刚刚创业的公司,公司没有专职产品经理和项 ...

  5. Java基础-JVM类加载机制

    JVM的类加载是通过ClassLoader及其子类来完成的,类的层次关系和加载顺序可以由下图来描述: 1)Bootstrap ClassLoader /启动类加载器 $JAVA_HOME中jre/li ...

  6. 单机redis多端口实例+keepalived高可用

    一.实验环境说明 192.168.115.21(keepalived+redis) 192.168.115.95(keepalived+redis) VIP:192.168.115.99 二.安装re ...

  7. IOS基础之 (七) 分类Category

    一 Category 分类:Category(类目,类别) (OC有) 命名:原来的类+类别名(原来的类名自动生成,只要写后面的类别名,一般以模块名为名.比如原来类 Person,新建分类 Ct,新建 ...

  8. 修改eclipse/MyEclipse中包的显示结构为树形

    在右上边三角那里进去设置 选第一个是显示完整的包名,第二个显示的是树形结构,我们一般用第一种,如下图:

  9. 初学structs2,表单验证简单补充

    一.使用注解方式,跳过验证某个方法 由于在开发中,我们不需在请求每一个action类中的方法时都要走validate方法,那么我们可以在这些不需要验证的方法上加上@SkipValidation注解即可 ...

  10. 修复UIImagePickerController偷换StatusBar颜色的问题

    - (void)navigationController:(UINavigationController *)navigationController willShowViewController:( ...