//服务器端api

extend\Map

<?php
/**
* 百度地图业务封装
*/
class Map{
/**
* 根据地址来获取经纬度
* @param $address
*/
public static function getLngLat($address) {
//拼装接口后面的参数
//http://api.map.baidu.com/geocoder/v2/?address=北京市海淀区上地十街10号&output=json&ak=您的ak&callback=showLocation //GET请求
//服务器端tw2PAd8vcGcxWi11ah39nf6oQNj2gV79
$data = [
'address' => $address,
'ak' => config('map.ak'),
'output' => 'json',
// 'ak' => 'tw2PAd8vcGcxWi11ah39nf6oQNj2gV79'
];
//http_build_query($data);
//拼接url
$url = config('map.baidu_map_url').config('map.geocoder').'?'.http_build_query($data);
// 1. file_get_contents($url);
//2. url
$result = doCurl($url);
print_r($result);
}
}
?>
==================================================================

index.php

<?php
namespace app\index\controller;
use think\Controller;
header("Content-type: text/html; charset=utf-8");
class Index extends Controller
{
public function index()
{
echo 'index';
}
public function test(){
\Map::getLngLat('石家庄市桥西区长兴街12号');
exit;
}
}
==================================================================
common.php
<?php
// +----------------------------------------------------------------------
// | ThinkPHP [ WE CAN DO IT JUST THINK ]
// +----------------------------------------------------------------------
// | Copyright (c) 2006-2016 http://thinkphp.cn All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
// | Author: 流年 <liu21st@gmail.com>
// +---------------------------------------------------------------------- // 应用公共文件
function doCurl($url,$type=0,$data=[]){
$ch = curl_init();//初始化
//设置选项
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_HEADER,0);
if($type==1){
//post
curl_setopt($ch,CURLOPT,1);
curl_setopt($ch,CURLOPT_POSTFIELDS,$data); }
//执行并获取内容
$output = curl_exec($ch);
//释放curl句柄
curl_close($ch);
return $output;
}
==================================================================
extra/Map.php
<?php
/**
* 地图相关配置
*/
return [
'ak' => 'tw2PAd8vcGcxWi11ah39nf6oQNj2gV79',
'baidu_map_url' => 'http://api.map.baidu.com/',
'geocoder' => 'geocoder/v2/',
]
?>

最新文章

  1. 线性时间O(n)内求数组中第k大小的数
  2. windows10搭建django1.10.3+Apache2.4
  3. nova 虚拟机迁移
  4. 经验分享:多屏复杂动画CSS技巧三则
  5. Google 镜像站搜集[转]
  6. java使用httpcomponents post发送json数据
  7. POJ 2002 Squares
  8. BZOJ2101: [Usaco2010 Dec]Treasure Chest 藏宝箱
  9. Spark常用函数讲解之键值RDD转换
  10. JAVASCRIPT——文字出现效果练习
  11. Excel单元格内容太多会覆盖遮住下一单元格范围
  12. Windows 8实例教程系列 - 开篇
  13. SQL写操作 设置内容 (数组转字符串)
  14. SmartSql Zookeeper分布式配置
  15. 第二篇--PCI设备解析
  16. CentOS6.x 下 /etc/security/limits.conf 被改错的故障经历
  17. timerfd与eventfd
  18. BZOJ1802: [Ahoi2009]checker(性质分析 dp)
  19. Shell脚本实现检测某ip网络畅通情况,实战用例
  20. 掀开图片显示介绍的css效果

热门文章

  1. C++对象模型——关于对象(第一章)
  2. [面试题]java中final finally finalized 的差别是什么?
  3. poj--3187--Backward Digit Sums(dfs)
  4. bzoj2503 相框——思路
  5. JS网页播放声音实现代码兼容各种浏览器
  6. ReverseEngineerCodeFirst 自定义模板
  7. 关于offer对比
  8. 【转】Postman接口测试之POST、GET请求方法
  9. 《深入理解Android虚拟机内存管理》示例程序编译阶段生成的各种语法树完整版
  10. Deutsch lernen (03)