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"
}
相关推荐
泡泡以安2 分钟前
【Android逆向工程】第3章:Java 字节码与 Smali 语法基础
android·java·安卓逆向
一笑的小酒馆6 小时前
Android launcher3实现简单的负一屏功能
android
xuyin12046 小时前
【Android】Flow基础知识和使用
android
李新_8 小时前
基于Markwon封装Markdown组件
android·aigc·markdown
4311媒体网9 小时前
帝国cms调用文章内容 二开基本操作
java·开发语言·php
Non-existent98710 小时前
Flutter + FastAPI 30天速成计划自用并实践-第10天-组件化开发实践
android·flutter·fastapi
@老蝴12 小时前
MySQL数据库 - 约束和联合查询
android·数据库·mysql
Evan芙12 小时前
nginx+php部署walle,发布php站点
运维·nginx·php
catchadmin12 小时前
PHP 8.6 即将支持部分函数应用
php
ljt272496066112 小时前
Compose笔记(六十一)--SelectionContainer
android·笔记·android jetpack