php根据地理名称获取百度地图中的位置

根据获取的地理名称,通过百度api得到经纬度,从而显示在地图中

  立即下载
$address = $_GET['address'] ? $_GET['address'] : '山东省济南市大明湖风景区'
//坐标 
$apiurl = "http://api.map.baidu.com/geocoder/v2/?address=" . $address . "&output=json&ak=3075ca513c180f154a83789e3f93c1c4&callback=showLocation"
$file = file_get_contents($apiurl); 
$file = str_replace("showLocation&&showLocation"""$file); 
$file = substr($file0, -1); 
$file = substr($file1); 
$arrpoint = json_decode($filetrue); 
 
$x = $arrpoint['result']['location']['lng']; 
$y = $arrpoint['result']['location']['lat'];

地址查询表单

<form action="index.php"> 
    <input type="text" name="address" value="<?php echo $address; ?>" /> 
    <input type="submit" value="提交" /> 
</form>

地址搜索查询结果

<div id="allmap" class="mt10 mapleft" style="width:100%; height:100%;"></div>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=1.4"></script> 
<script type="text/javascript"
    var x = '<?php echo $x; ?>'
    var y = '<?php echo $y; ?>'
    var shopInfo = "地理名称:<?php echo $address; ?></span>"
    var map = new BMap.Map("allmap"); // 创建Map实例 
    var point = new BMap.Point(x, y); 
    map.centerAndZoom(point, 15); //设置中心点 和缩放级别 
    //map.addControl(new BMap.NavigationControl()); //添加鱼骨  
    //map.addControl(new BMap.ScaleControl()); // 添加比例尺控件 
    map.addControl(new BMap.OverviewMapControl()); //添加缩略地图控件 
    map.enableScrollWheelZoom();                  // 启用滚轮放大缩小。 
    map.enableKeyboard();                         // 启用键盘操作。 
    // map.addControl(new BMap.MapTypeControl({ anchor: BMAP_ANCHOR_TOP_RIGHT })); 
 
    var marker = new BMap.Marker(point); 
    var infoWindow = new BMap.InfoWindow(shopInfo);  // 创建信息窗口对象 
    map.addOverlay(marker); 
    marker.addEventListener("click"function() { 
        this.openInfoWindow(infoWindow); 
    }); 
    //map.openI
相关评论(0)
您是不是忘了说点什么?

友情提示:垃圾评论一律封号...

还没有评论,快来抢沙发吧!