腾讯的接口是 ,返回数组 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. 【Moqui业务逻辑翻译系列】Story of Online Retail Company 在线零售公司的故事

    h1. Story of Online Retail Company 在线零售公司的故事 Someone decides to sell a product. [Product Marketer Ma ...

  2. js获取服务器时间戳

    <!DOCTYPE html> <html> <head> <title>ajax</title> </head> <bo ...

  3. hdu3374 KMP+最大最小表示法

    这题要求的是字符串左移时字典序最小和最大的第几次出现,并求出现次数.考虑一会可以发现,出现次数和循环节是有关系的. 出现了几次,就是循环了几次,如果循环节是他本身,也就是无循环,那这个字符串不管怎么移 ...

  4. 判断一个数据是否存在于一个表中,Oracle中写自定义函数

    create or replace function isExist(data in DataTypes) --DataTypes 为表中该数据的类型return Numberisv_flag num ...

  5. 友盟iOS推送配置(从真机调试到推送)

    下面我来讲解一下友盟iOS的推送配置,其实友盟只是一个示例,换做其余的第三方推送服务也会适用,只是第三方的后面服务变了而已. iOS推送(包括真机调试)所需要的步骤和文件如下: 备注:这里我将省略掉一 ...

  6. JSON后端页面解析

    json-lib 请求: http://localhost:8080/MyWeb/pay?cmd=getUrl&param={"OrderId":"sddd111 ...

  7. c++实现快排出现错误

    #include"header_file.h" using namespace std; void swap(int a,int b) { int t; t=a; a=b; b=t ...

  8. 常用数据库 JDBC URL 格式

    一 常用数据库 JDBC URL 格式 1 sqLite  驱动程序包名:sqlitejdbc-v056.jar 驱动程序类名: org.sqlite.JDBC JDBC URL: jdbc:sqli ...

  9. 2016年4月7日 js的全选和反选

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <title> ...

  10. 也谈闭包--小白的JS进阶之路

    JavaScript当然是会用的,不过没有深入系统的学习罢了.平常还是用JQuery比较多,原生的JS用到的很少. 不过前端时间学习Ruby,被动态语言的强大和魔幻给震惊了一把.了解Ruby后,我把目 ...