当前位置:主页技术文章

利用IP地址获取用户的地理位置信息

文章来源:酷乐网 更新时间:2022-05-15 13:32 热度:214

最近酷乐在项目中遇到一个需要获取用户IP信息并查询出用户地理位置信息的需求,代码如下:
1.首先获取用户具体的IP信息。

<?php
function getClientIp(){
    if (getenv('HTTP_CLIENT_IP')) {
        $ip = getenv('HTTP_CLIENT_IP');
    }
    if (getenv('HTTP_X_REAL_IP')) {
        $ip = getenv('HTTP_X_REAL_IP');
    } elseif (getenv('HTTP_X_FORWARDED_FOR')) {
        $ip = getenv('HTTP_X_FORWARDED_FOR');
        $ips = explode(',', $ip);
        $ip = $ips[0];
    } elseif (getenv('REMOTE_ADDR')) {
        $ip = getenv('REMOTE_ADDR');
    } else {
        $ip = '0.0.0.0';
    }

    return $ip;
}

2.通过获取到的IP信息调用接口查询用户的地理位置。

<?php
function info($ip)
    {
        $url = file_get_contents("http://ip.taobao.com/outGetIpInfo?ip=$ip&accessKey=alibaba-inc");
        $res1 = json_decode($url,true);
        $data =$res1;
        if ($data) {
            return $data['data'];
        } else {
            return 'unknown';
        }
    }

3.

<?php
$userip=getClientIp(); //把获取IP函数赋值给userip变量
$info = info($userip);//引用info函数并把userip变量带入赋值给info变量。

利用IP地址获取用户的地理位置信息

print_r($info)下变量即可查看到变量的数组信息,用<?php echo $info[''];?>调用即可。
例如:<?php echo $info['region'];?>即可获取到当前用户的省份。
分享到:
同类推荐
评论列表
签到

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

支付宝扫一扫打赏

微信扫一扫打赏

微信扫一扫打赏