码迷,mamicode.com
首页 > Web开发 > 详细

PHP 根据ip获取对应的实际地址

时间:2019-01-15 15:56:28      阅读:219      评论:0      收藏:0      [点我收藏+]

标签:传输   新浪   .com   web   echo   文件   code   upload   curl   

在网上有很多的根据ip地址获取实际地址的教程

他们给了很多的现成接口,例:

新浪:‘http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=‘ . $ip

淘宝:"http://ip.taobao.com/service/getIpInfo.php?ip=".$ip

等接口去根据ip地址获取实际地址的接口,但是这些接口十分的不稳定,这里我推荐百度地图的根据ip获取实际地址的接口,经过测试,速度杠杠的,而且十分的稳定

一:登录http://lbsyun.baidu.com/index.php?title=webapi/ip-api获取秘钥:

技术分享图片

填写相关的信息获取到一串秘钥

二:根据百度地图提供的接口地址获取实际地址信息

这里以普通IP定位为例:

技术分享图片

根据教程编写根据ip获取实际地址代码:

<?php
function curl($url)
{
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    //参数为1表示传输数据,为0表示直接输出显示。
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    //参数为0表示不带头文件,为1表示带头文件
    curl_setopt($ch, CURLOPT_HEADER,0);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,false);
    $output = curl_exec($ch);
    curl_close($ch);
    return $output;
}
$data_info=curl("http://api.map.baidu.com/location/ip?ip=218.94.147.138&ak=XXXXXXXXXX");
//$data_info=file_get_contents("http://api.map.baidu.com/location/ip?ip=218.94.147.138&ak=XXXXXXXXXX");
$data_info = json_decode($data_info,true); //数据转换
echo ‘<pre>‘;
print_r($data_info);
echo ‘</pre>‘;

输出结果为:

技术分享图片

PHP 根据ip获取对应的实际地址

标签:传输   新浪   .com   web   echo   文件   code   upload   curl   

原文地址:https://www.cnblogs.com/huaweichenai/p/10271903.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!