×

php经纬度获取城市

php经纬度获取城市(php获取位置)

admin admin 发表于2023-04-03 12:43:10 浏览88 评论0

抢沙发发表评论

本文目录一览:

php怎样获取当前位置的经纬度?

随着 Google Maps API 的普及,开发人员常常需要获得某一特定地点的经度和纬度。这个非常有用的函数以某一地址作为参数,返回一个数组,包含经度和纬度数据。

function getLatLong($address){

if (!is_string($address))die("All Addresses must be passed as a string");

$_url = sprintf('a href=";q=%s";q=%s',rawurlencode($address));

$_result = false;

if($_result = file_get_contents($_url)) {

if(strpos($_result,'errortips') 1 || strpos($_result,'Did you mean:') !== false) return false;

preg_match('!center:\\s*{lat:\\s*(-?\\d+\\.\\d+),lng:\\s*(-?\\d+\\.\\d+)}!U', $_result, $_match);

$_coords['lat'] = $_match[1];

$_coords['long'] = $_match[2];

}

return $_coords;

}

php根据经纬度获取地理位置

这种功能,只能调用第三方的接口了,百度地图API就有这个接口addressComponents,逆地址解析,参考方法如下:

GeocoderSearchResponse

statusOK/status

result

location

lat38.990998/lat

lng103.645966/lng

/location

formatted_address甘肃省武威市民勤县/formatted_address

business/

addressComponent

streetNumber/

street/

district民勤县/district

city武威市/city

province甘肃省/province

/addressComponent

cityCode118/cityCode

/result

/GeocoderSearchResponse

地理(Geography),是世界或某一地区的自然环境(山川、气候等)及社会要素的统称。“地理”一词最早见于中国《易经》。古代的地理学主要探索关于地球形状、大小有关的测量方法,或对已知的地区和国家进行描述。-php经纬度获取城市

地理学是研究地球表面的地理环境中各种自然现象和人文现象,以及它们之间相互关系的学科。地理是一门综合性的基础学科。

php 怎么通过ip来获取所在位置

echo  getcposition(getIP());

function getIP(){

    if (isset($_SERVER)) {

        if (isset($_SERVER[HTTP_X_FORWARDED_FOR])) {

            $realip = $_SERVER[HTTP_X_FORWARDED_FOR];

        } elseif (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");

        } elseif (getenv("HTTP_CLIENT_IP")) {

            $realip = getenv("HTTP_CLIENT_IP");

        } else {

            $realip = getenv("REMOTE_ADDR");

        }

    }

    return $realip;

}

function getcposition($ip){

$res1 = file_get_contents("");

$res1 = json_decode($res1,true);

//print_r($res1);

  if ($res1[ "code"]==0){

return $res1['data']["country"].$res1['data'][ "region"].$res1['data']["city"]."_".$res1['data'][ "isp"];-php经纬度获取城市

}else{

return "未知";

}

?

php 根据经纬度 获得 城市名

没有相关的数据库是不可能的,PHP 只能算是数据组织的一个信使,

如何用PHP获取到百度地图坐标或者经纬度

是传入地址获取地址的经纬度吗?

以下是一个关于地理编码的简单示例。发送一个地址是“百度大厦”的请求,返回该地址对应的地理坐标。发送请求的url如下:

$return = file_get_contents(百度大厦output=jsonak=E4805d16520de693a3fe707cdc96204);

这样就获取到返回的数据拉

百度地图api如何根据城市名或经纬度获取当前城市东西经南北纬范围 js

Geocoding API包括地址解析和逆地址解析功能。

地址解析是指,由详细到街道的结构化地址得到百度经纬度信息,且支持名胜古迹、标志性建筑名称直接解析返回百度经纬度。例如:“北京市海淀区中关村南大街27号”地址解析的结果是“lng:116.31985,lat:39.959836”,“百度大厦”地址解析的结果是“lng:116.30815,lat:40.056885”-php经纬度获取城市

逆地址解析是指,由百度经纬度信息得到结构化地址信息。例如:“lat:31.325152,lng:120.558957”逆地址解析的结果是“江苏省苏州市虎丘区塔园路318号”。注意:

1.因为Geocoding和反Geocoding使用的门址数据以及算法都不是一样的,所以会出现不能一一对应的现象。

2.解析过程中可能会出现一对坐标值对应多个地址门牌信息,本接口将返回距离坐标点最近的一个地址门牌信息。

使用限制

目前无任何使用限制。请申请key,然后使用该接口。

如何使用

第一步,申请key,点击这里获取密钥,申请key需要注册百度账号;

第二步,拼写发送http请求的url,注意需使用第一步申请的key;

第三步,接收http请求返回的数据(支持json和xml格式)。

服务地址

地址解析:根据地址获取坐标

地址output=输出格式类型key=用户密钥city=城市名

逆地址解析:根据坐标获取地址

纬度,经度output=输出格式类型key=用户密钥

备注:

1. city属于可选参数,通常情况可以不使用,若解析无结果,请尝试增加此字段。

2. 支持名胜古迹、标志性建筑物名称解析返回百度经纬度坐标,如address=“百度大厦”。

3. 支持使用“*路与*路交叉口”方式解析返回百度经纬度坐标,若地址库中存在该地址描述,返回百度经纬度坐标。

4. 若解析status字段为OK,若结果内容为空,原因分析及可尝试方法:

地址库里无此数据,本次结果为空。

加入city字段重新解析;

将过于详细或简单的地址更改至省市区县街道重新解析;

5. 特别提醒:逆地址解析location参数传入的参数格式是(纬度lat,经度lng)。

接口参数

参数 是否必须 默认值 格式举例 含义

output 否 json json或xml 输出格式为json或者xml

address 是 无 北京市海淀区上地十街10号 根据指定地址进行坐标的反定向解析

location 是 无 38.76623,116.43213

lat纬度,lng经度 根据指定坐标来进行地址的解析

city 否 “北京市” “广州市” 地址所在的城市名

key 是 无 8cb976834235d8cbcde2dce4835ae191 用户申请注册的key

上表中address和location两个字段如果同时出现,则优先选择address执行地理编码功能。对于address字段可能会出现中文或其它一些特殊字符(如:空格),所以对于类似的字符都要进行编码处理,编码成 UTF-8 字符的二字符十六进制值,凡是不在下表中的字符都要进行编码。-php经纬度获取城市

字符集合 字符

URL非保留字 a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 – _ . ~-php经纬度获取城市

URL保留字 ! * ‘ ( ) ; : @ = + $ , / ? % # [ ]

附注:

(1) javascript中一般采用encodeURIComponent函数对特殊字符进行编码。

(2) Java中可以使用函数URLEncoder.encode对特殊字符进行编码。

(3) C#中可以使用函数HttpUtility.UrlEncode对特殊字符进行编码。

(4) php中可以使用函数urlencode对特殊字符进行编码。

返回数据说明

返回结果(地址解析的结果)

{status: '字符串状态常量', 取值如下:

//OK 成功

INVILID_KEY 非法密钥

INVALID_PARAMETERS 非法参数,参数错误时候给出。

result: {

location: {

lat: 纬度:数值,

lng: 经度:数值

},

precise:’位置的附加信息,是否精确查找’(1为精确查找,0为不精确查找),

confidence: 可信度,

level:'级别'

},

}

返回结果(反地址解析的结果)

{status: '字符串状态常量', 取值如下:

//OK 成功

INVILID_KEY 非法密钥

INVALID_PARAMETERS 非法参数,参数错误时候给出。

result: {

location: {

lat: 纬度:数值,

lng: 经度:数值

},

formatted_address: ‘详细地址描述’,

business: '周围商圈',

addressComponent:{

city:’城市名称’,

district: ‘区县名称’,

province:’省份名称’,

street: ‘街道名称’,

streetNumber: '门牌号码'

},

cityCode: '城市代码'

}

}

接口示例

根据详细地址获取坐标

;output=jsonkey=37492c0ee6f924cb5e934fa08c6b1676

//根据“上地十街10号”返回坐标“lng:116.307175, lat:40.057098”,以json格式输出

;output=xmlkey=37492c0ee6f924cb5e934fa08c6b1676

//根据“上地十街十号”返回坐标“lng:116.307175, lat:40.057098”,以xml格式输出

在指定城市内检索详细地址的坐标

;output=jsonkey=37492c0ee6f924cb5e934fa08c6b1676city=%E5%8C%97%E4%BA%AC%E5%B8%82

// 在北京市内根据“上地十街10号”返回坐标“lng:116.307175, lat:40.057098”,以json格式输出

;output=xmlkey=37492c0ee6f924cb5e934fa08c6b1676city=%E5%8C%97%E4%BA%AC%E5%B8%82

// 在北京市内根据“上地十街10号”返回坐标“lng:116.307175, lat:40.057098”,以json格式输出

根据特定建筑物获取它的坐标

;output=jsonkey=37492c0ee6f924cb5e934fa08c6b1676 //根据“百度大厦”名称返回坐标“lng:116.307175, lat:40.057098”,以json格式输入-php经纬度获取城市

;output=xmlkey=37492c0ee6f924cb5e934fa08c6b1676 //根据“百度大厦”名称返回坐标“lng:116.307175, lat:40.057098”,以xml格式输入-php经纬度获取城市

根据“*路与*路交叉路口”类型地址描述获得它的坐标

;output=jsonkey=37492c0ee6f924cb5e934fa08c6b1676

//根据“北一环路和阜阳路的交叉路口”名称返回坐标“lng:117.294364, lat:31.885558”,以json格式输入

;output=xmlkey=37492c0ee6f924cb5e934fa08c6b1676

//根据“北一环路和阜阳路的交叉路口”名称返回坐标“lng:117.294364, lat:31.885558”,以xml格式输入

根据坐标获取它的地址

;location=39.983424,%20116.322987key=37492c0ee6f924cb5e934fa08c6b1676

//解析“lat:39.983424, lng:116.322987”坐标返回“北京市海淀区中关村大街27号1101-08室”,以json格式输出

;location=39.983424,%20116.322987key=37492c0ee6f924cb5e934fa08c6b1676

//解析“lat:39.983424, lng:116.322987”坐标返回“北京市海淀区中关村大街27号1101-08室”,以xml格式输出

百度地址