PHP根据IP地址获取地理位置城市和经纬度信息

php 复制代码
/** 根据IP地址 获取地理位置*/
function getLocationByIP($ip) {
    $url = "http://ip-api.com/json/{$ip}?lang=zh-CN&fields=status,message,country,countryCode,region,regionName,city,lat,lon,timezone,isp,org,as";
    $response = file_get_contents($url);
    $data = json_decode($response, true);

    if ($data['status'] == 'success') {
    	return $data;
        
    } else {
        return ''; // 或者返回错误信息
    }
}

在浏览器里请求这个地址

php 复制代码
http://ip-api.com/json/124.236.132.47?fields=status,message,country,countryCode,region,regionName,city,lat,lon,timezone,isp,org,as&lang=zh-CN

返回了这些信息

php 复制代码
{
"status":"success",
"country":"中国",
"countryCode":"CN",
"region":"HE",
"regionName":"河北省",
"city":"石家庄市",
"lat":38.036,
"lon":114.47,
"timezone":"Asia/Shanghai",
"isp":"Chinanet",
"org":"Chinanet HE",
"as":"AS4134 CHINANET-BACKBONE"
}
相关推荐
Bruce_Liuxiaowei3 分钟前
Mac_Linux 查询网站IP地址:4个核心命令详解
linux·tcp/ip·macos
步步为营DotNet6 分钟前
深度剖析.NET中HttpClient的请求重试机制:可靠性提升与实践优化
开发语言·php·.net
JaguarJack15 分钟前
再推荐 10 个低调但非常实用的 PHP 包
后端·php
老蒋新思维19 分钟前
创客匠人观察:知识IP的下一站——与AI智能体共生的“人机协同”模式
大数据·人工智能·网络协议·tcp/ip·重构·创始人ip·创客匠人
2501_9151063228 分钟前
iOS 性能优化这件事,结合多工具分析运行期性能问题
android·ios·性能优化·小程序·uni-app·cocoa·iphone
qq_1508419929 分钟前
CVI基于TCP的C/S例程学习心得
服务器·网络·tcp/ip
千里马学框架34 分钟前
如何使用豆包手机的READ_FRAME_BUFFER权限截图密码画面
android·智能手机·framework·安卓framework开发·权限·截图·secure
游戏开发爱好者837 分钟前
App Store 上架流程,结合多工具协作
android·ios·小程序·https·uni-app·iphone·webview
阿道夫小狮子38 分钟前
android 音频抢占问题
android·音视频
撩得Android一次心动1 小时前
Android 四大组件——Service(服务)【基础篇1】
android·服务·四大组件