php 百度逆地理编码,百度逆地址解析

http://lbsyun.baidu.com/index.php?title=webapi/guide/webservice-geocoding

city

“北京市”

“广州市”

地址所在的城市名。用于指定上述地址所在的城市,当多个城市都有上述地址时,该参数起到过滤作用。

对于address字段可能会出现中文或其它一些特殊字符(如:空格),对于类似的字符要进行编码处理,编码成 UTF-8 字符的二字符十六进制值,凡是不在下表中的字符都要进行编码。

字符集合

字符

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 - _ . ~

URL保留字

! * ' ( ) ; : @ & = + $ , / ? % # [ ]

附注:

1、javascript中一般采用encodeURIComponent函数对特殊字符进行编码;

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

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

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

地理编码示例:

以下是关于地理编码参数使用方法的示例。发送请求显示结果的JavaScript代码此处查看。

请求示例:对北京市百度大厦进行地理编码查询;

http://api.map.baidu.com/geocoder/v2/?ak=E4805d16520de693a3fe707cdc962045&callback=renderOption&output=json&address=百度大厦&city=北京市

地理编码返回结果字段:

名称

类型

说明

status

Int

返回结果状态值, 成功返回0,其他值请查看下方返回码状态表。

location

object

经纬度坐标

lat

float

纬度值

lng

float

经度值

precise

Int

位置的附加信息,是否精确查找。1为精确查找,即准确打点;0为不精确,即模糊打点。

confidence

Int

可信度,描述打点准确度

level

string

地址类型

json格式的返回值:

//带回调函数的返回格式

showLocation&&showLocation(

{

status: 0,

result: {

location: {

lng: 116.30814954222,

lat: 40.056885091681

},

precise: 1,

confidence: 80,

level: "商务大厦"

}

}

)

//不带回调函数的返回值

{

status: 0,

result: {

location: {

lng: 116.30814954222,

lat: 40.056885091681

},

precise: 1,

confidence: 80,

level: "商务大厦"

}

}

xml格式的返回值:

>

>0>

>

>

>40.056885091681>

>116.30814954222>

>

>1>

>80>

>商务大厦>

>

>

特别说明:若解析status字段为OK,但结果内容为空,原因分析及可尝试方法:1、地址库里无此数据,本次结果为空;2、加入city字段重新解析;3、将过于详细或简单的地址更改至省市区县街道重新解析。

逆地理编码服务

逆地理编码专属请求参数:

参数

是否必须

默认值

格式举例

含义

coordtype

bd09ll

bd09ll 百度经纬度坐标

坐标的类型,目前支持的坐标类型包括:bd09ll(百度经纬度坐标)、bd09mc(百度米制坐标)、gcj02ll(国测局经纬度坐标)、wgs84ll( GPS经纬度)

location

38.76623,116.43213lat,lng

根据经纬度坐标获取地址

pois

0

0

是否显示指定位置周边的poi,0为不显示,1为显示。当值为1时,显示周边100米内的poi。

状态字段:

名称

类型

说明

status

constant

返回结果状态值, 成功返回0,其他值请查看附录。

location

lat

纬度坐标

lng

经度坐标

formatted_address

结构化地址信息

business

所在商圈信息,如 "人民大学,中关村,苏州街"

addressComponent

country

国家

province

省名

city

城市名

district

区县名

street

街道名

street_number

街道门牌号

adcode

行政区划代码

country_code

国家代码

direction

和当前坐标点的方向,当有门牌号的时候返回数据

distance

和当前坐标点的距离,当有门牌号的时候返回数据

pois(周边poi数组)

addr

地址信息

cp

数据来源

direction

和当前坐标点的方向

distance

离坐标点距离

name

poi名称

poiType

poi类型,如’ 办公大厦,商务大厦’

point

poi坐标{x,y}

tel

电话

uid

poi唯一标识

zip

邮编

sematic_description

constant

当前位置结合POI的语义化结果描述。

json示例:

http://api.map.baidu.com/geocoder/v2/?ak=E4805d16520de693a3fe707cdc962045&callback=renderReverse&location=39.983424,116.322987&output=json&pois=1

xml示例:

http://api.map.baidu.com/geocoder/v2/?ak=E4805d16520de693a3fe707cdc962045&callback=renderReverse&location=39.983424,116.322987&output=xml&pois=1

特别说明:

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

2、逆地址解析location参数传入的参数格式是(纬度lat,经度lng)。

返回码状态表

返回码

定义

0

正常

1

服务器内部错误

2

请求参数非法

3

权限校验失败

4

配额校验失败

5

ak不存在或者非法

101

服务禁用

102

不通过白名单或者安全码不对

2xx

无权限

3xx

配额错误

升级说明

v2版本较之v1版本,功能更新详见更新日志。若需查看v1文档,请点击目录 “Geocoding APIv1.0”。

若v1版本升级至v2版本,地理/逆地理编码的请求url,参数:新增版本号“v2”,修改“key”为“ak”。v2不兼容v1版本的key,若需升级,请重新获取密钥。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值