免费的ip数据库淘宝IP地址库简介和PHP调用实例
前端之家收集整理的这篇文章主要介绍了
免费的ip数据库淘宝IP地址库简介和PHP调用实例,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_3010@一、关于淘宝IP地址库
@H
301_0@我们目前提供的服务
包括:
1. 根据
用户提供的IP地址,
快速查询出该IP地址所在的地理信息和地理相关的信息,
包括国家、省、市和运营商。
2.
用户可以根据自己所在的位置和使用的IP地址更新我们的服务
内容。
我们的优势:
1. 提供国家、省、市、县、运营商全方位信息,信息维度广,格式规范。
2. 提供完善的
统计分析报表,省准确度超过99.8%,市准确度超过96.8%,数据质量有保障。
@H_
3010@
二、接口说明
@H301_0@1. 请求接口(GET):
http://ip.taobao.com/service/getIpInfo.
PHP?ip=[ip地址字串]
2. 响应信息:
(json格式的)国家 、省(自治区或直辖市)、市(县)、运营商
3. 返回数据格式:
<div class="codetitle">
<a style="CURSOR: pointer" data="46580" class="copybut" id="copybut46580" onclick="doCopy('code46580')"> 代码如下: <div class="codebody" id="code46580">{"code":0,"data":{"ip":"210.75.225.254","country":"\u4e2d\u56fd","area":"\u534e\u5317",
"region":"\u5317\u4eac\u5e02","city":"\u5317\u4eac\u5e02","county":"","isp":"\u7535\u4fe1",
"country_id":"86","area_id":"100000","region_id":"110000","city_id":"110000",
"county_id":"-1","isp
id":"100017"}} _0@1. IP
2. IP准确度、覆盖度
PHP/**
*
获取用户真实 IP
*/
function getIP(){
static $realip;
if (isset($_SERVER)){
if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])){
$realip = $_SERVER["HTTP_X_FORWARDED_FOR"];
} else if (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");
} else if (getenv("HTTP_CLIENT_IP")) {
$realip = getenv("HTTP_CLIENT_IP");
} else {
$realip = getenv("REMOTE_ADDR");
}
}
return $realip;
}
/**
*
获取 IP 地理位置
* 淘宝IP接口
* @Return: array
*/
function getCity($ip)
{
$url="http://ip.taobao.com/service/getIpInfo.
PHP?ip=".$ip;
$ip=json_decode(file_get_contents($url));
if((string)$ip->code=='1'){
return false;
}
$data = (array)$ip->data;
return $data;
}
print_r(getCity('123.22.34.213'));
?>
TaobaoIP result1 = TaobaoIPHelper.GetIP("8.8.8.8");
if (result1.code == 0)
{
Console.WriteLine(string.Format("
调用成功。该ip的国家为{0},省份为{1},城市为{2},运营商为{3}"
,result1.data.country,result1.data.region,result1.data.city,result1.data.isp)
);
}
else
{
Console.WriteLine("失败,原因为:"+result1.errorMsg);
}
TaobaoIP[] result2 = TaobaoIPHelper.GetDomain("lixin.me");
foreach (TaobaoIP item in result2)
{
if (item.code == 0)
{
Console.WriteLine(string.Format("
调用成功。该ip的国家为{0},item.data.country,item.data.region,item.data.city,item.data.isp)
);
}
else
{
Console.WriteLine("失败,原因为:" + item.errorMsg);
}
}