百度地图API
WEB服务API
网址:
百度地图Web服务API为开发者提供http/https接口,即开发者通过http/https形式发起检索请求,获取返回 json 或xml格式的检索数据。用户可以基于此开发JavaScript、C#、C++、Java等语言的地图应用。
正/逆地理编码服务
功能介绍
正/逆地理编码服务(又名Geocoding API)是一类Web API接口服务;
1) 正向地理编码服务
用户可通过该功能,将结构化地址(省/市/区/街道/门牌号)解析为对应的位置坐标。地址结构越完整,地址内容越准确,解析的坐标精度越高。
2) 逆地理编码服务
用户可通过该功能,将位置坐标解析成对应的行政区划数据以及周边高权重地标地点分布情况,整体描述坐标所在的位置。
正向地理编码服务
1) 接口地址
北京市海淀区上地十街10号&output=json&ak=您的ak&callback=showLocation
2) 请求方式
Get
3) 请求参数说明
4) 返回结果参数
创建应用,获取ak(用户申请注册的key)
应用创建完成,获取到ak
Iwebshop二次开发——后台PHP文件修改
1. 修改/controllers/simple文件
1) 在seller_reg方法中添加如下代码
构造出的接口请求地址如下:
2) 注册一个商户,查看百度地图API返回的经、纬度信息
单击”提交”按钮后即可获取到接口返回的数据
获取左括号与右括号之间的数据(json 字符串 ),需要将此字符串转换成PHP数组
截取后的字符串如下:
将上述json格式的字符串转换为PHP数组
从上述数组中获取纬度和经度值
在$sellerRow数组中新加lat和lng数据项,此数组中数据最终存储在iwebshop_seller表中
在iwebshop_seller表中新增lat(纬度)和lng(经度)字段
注册一个商户,查看iwebshop_seller表,观察lat、lng字段是否存入数据
商户注册页面地址:
1) 输入注册信息并提交
2) 提示注册成功
3) 查看iwebshop_seller表,纬度(lat)、经度(lng)值已存入表中相应字段
启用(激活)商户
商户注册完毕后,默认处于”待审核”状态,进入系统管理员后台,将商户状态设置为”正常”,从而启用商户,之后在前台即可查看该商户详情、该商户发布的商品信息。
Iwebshop二次开发——前台展示页面文件修改
1. 申请百度JavaScript API服务
在前台商家页面根据数据库中存储的商家地址纬度、经度值,获取地图。
使用JavaScript API实现上述功能。
1. 产品简介
百度地图JavaScript API是一套由JavaScript语言编写的应用程序接口,可帮助您在网站中构建功能丰富、交互性强的地图应用,支持PC端和移动端基于浏览器的地图应用开发,且支持HTML5特性的地图开发。
该套JavaScript API免费对外开放,接口使用无次数限制。在使用前,您需先申请密钥(ak)才可使用。
创建应用,获取ak
应用创建成功,已获取到ak
查看商家信息
1. 进入商家列表页,页面地址:www.iwebshop.com/site/seller
进入商家详情页,在合适位置展示商家地图
根据表中存储的商家位置坐标(纬度、经度)生成地图。
编写代码,实现地图展示
1. 在/default/site/home.php页面(商家详情页)中增加<p>标签,最终在此标签内展示地图。
分析site控制器
分析site控制器的home方法(上述模板页面由此方法渲染输出),可知在home方法中调用了getSellerInfo接口,此接口功能是获取某个商户的详细信息(包含所有字段)。
接口定义
接口文件,查询并返回某商户的所有信息
在/view/default/layout/site.html布局文件中引用百度地图JavaScript API接口
在/view/default/site/layout/site. html文件 中添加下述js代码,生成地图