1)API申请

2)API调用

3)[b]效果展示[/b]

4)精准查询

--------------------------------------------------------------------------

1)API申请

爱帮提供查询接口API,需要申请Key www.aibang.com

查询数量有限制,2013-12-4 最多 1000次/每天 10次/分钟

返回json数据

提供数据说明

提供demo文件

2)API调用

调用API取得数据后,按自己的格式输出即可/*

aibang's api return josn data

d_eng (sh109419@163.com)

2013-12-4

*/

define("APP_KEY", "xx00ac396d6d75e8681fc8380060c5b2");

include_once "ABClient.php";

//header("Content-Type:text/html; charset=utf-8");

function bustransfer($city,$start,$end) {

$client = new ABClient(APP_KEY);

list($code, $arr) = $client->getBusTransfer($city, array("start_addr" =>$start, "end_addr"=>$end));

if ($code<>200){

return false;

}

$ret ="";

$buses = $arr[buses][bus];

// show the top 3 records

$ret = $start ."-->".$end."\n";

$count = 1;

foreach ($buses as $bus) {

if ($count > 3) break;

$segments =$bus[segments][segment];

$ret .= "\n";

// get line name and remove remark

$linename = "";

foreach($segments as $segment) {

if (!empty($linename)) $linename .= '--' ;

$linename .= shortlinename($segment[line_name]);

}

$ret .= $linename . "\n" ;

$total = sprintf("%d分钟 %d米 步行%d米",$bus[time],$bus[dist],$bus[foot_dist]);

$ret .= $total . "\n" ;

// detail

$from = sprintf("从 %s ",$start);

$ret .= $from;

foreach($segments as $segment) {

if ($segment[foot_dist] > 0) {

$segfoot = sprintf("步行%d米 到达 %s",$segment[foot_dist],$segment[start_stat]);

$ret .= $segfoot . "\n" ;

}

$stats = substr_count($segment[stats],';');

$line = sprintf("乘坐 %s(%d站) 到达 %s",shortlinename($segment[line_name]),$stats,$segment[end_stat]);

$ret .= $line . "\n" ;

}

if ($bus[last_foot_dist] > 0) {

$lastfoot = sprintf("步行%d米 到达 %s",$bus[last_foot_dist],$end);

$ret .= $lastfoot;

}

}

return $ret;

}

function shortlinename($linename){

return substr($linename,0,strpos($linename,'('));

}

$a=bustransfer("南昌","老福山","青山路口");

var_dump($a);

3)效果展示

4)精准查询

公交查询中,要求输入的是公交/地铁的站名

如果不知道准确的站名,往往得不到结果,

在网页上,系统可以通过提示选择准确的公交站点来完成,

但,微信上这么做就不方便了

改进方案如下:

爱帮有个公交站点查询API

通过这个API找到用户输入信息附近的站点并取出第一个作为公交换乘的站点

这样,公交换乘查找成功的机率就增加了。

【相关推荐】

公交线路换乘代码PHP,微信开发之公交换乘功能代码详解相关推荐

  1. 微信服务号及支付功能接入详解

    本文同步至个人博客 微信服务号及支付功能接入详解,转载请注明出处 最近在实现微信服务号支付功能,这边对接入商户资料审核及接口接入相关内容进行梳理. 旨在理清相关帐号的申请流程.整理服务开通.开发数据的 ...

  2. 【weiphp微信开发教程】留言板插件开发详解

    基于weiphp框架的留言板插件教程: 1.功能分析 传统的留言板应该具有发布留言.查看留言.回复留言.管理留言等功能,本教程开发的是最基本的留言板,仅包含发布留言和查看留言两个功能,根据功能用boo ...

  3. 微信开发获取access_token(凭证)接口的详解

    在微信开发中,就有一些接口会涉及到获取接口凭证的接口,开发文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp142114018 ...

  4. php 微信开发实战pdf,微信开发实战之模块化的实例详解

    在任何一个大型应用中模块化是很常见的,与一些更传统的编程语言不同的是,JavaScript (ECMA-262版本)还不支持原生的模块化. Javascript社区做了很多努力,在现有的运行环境中,实 ...

  5. 微信开发中消息回复的代码_消息中的消息

    微信开发中消息回复的代码 Ste·ga·no·graph·y / stegəˈnägrəfi / (noun): the practice of concealing messages or info ...

  6. 那些年微信开发过的鸡肋功能,及其带给我们的思考

    本文由作者"卫夕"(ID:weixizhibei)原创,作者为资深广告产品经理,致力于剖析互联网广告的基本逻辑.思路及技巧. 1.引言 坐拥7亿日活的微信极其成功,有人说微信的成功 ...

  7. 微信直接回复图片+php,php微信开发之图片回复功能

    本文实例为大家分享了php微信图片回复功能的具体代码,供大家参考,具体内容如下 /** *wechatphptest */ //defineyourtoken define("TOKEN&q ...

  8. 微信小程序云开发入门(二)-数据库详解

    微信小程序云开发入门(二)-数据库详解 接上一篇:微信小程序云开发入门(一) 摘要: 因为微信小程序云数据库有点类似传统的关系型数据库,但又有所不同.所以刚入手的时候会有点困扰,经过一段时间的学习和摸 ...

  9. 《微信小程序开发》 页面导航最强详解 | 如何对小程序页面进行跳转?

    <微信小程序开发> 页面导航最强详解 | 如何对小程序页面进行跳转? 文章目录 <微信小程序开发> 页面导航最强详解 | 如何对小程序页面进行跳转? 一.微信小程序导航 二.命 ...

最新文章

  1. TensorFlow与PyTorch之争,哪个框架最适合深度学习
  2. linux搭建vsftpd虚拟用户访问
  3. kmeans 是Nondeterministic algorithm
  4. Gym - 101102C
  5. MyEclipse 2014中 Window--customize perspective 功能 打不开的解决办法
  6. 汉字正字表达式解决方案
  7. [POJ 3709] K-Anonymous Sequence(斜率优化dp / 动态维护凸包)
  8. 开源代码的使用 二次开发
  9. 学习Ruby的10条理由
  10. 微博表情插入mysql数据库,表情都是四字节字符
  11. er ubnt x设置教程_ubnt的er-x做交换机应该怎么设置啊?
  12. 计算机课程成绩认定管理办法,全日制普通本科生课程学分成绩对接认定管理办法...
  13. hive整和mysql外表_hive中的外表EXTERNAL TABLE
  14. python调用foxmail 发邮件_foxmail 收取已发送邮件
  15. darda oracle tfa_OSW - feiyun8616 - 博客园
  16. 详解myeclipse和maven的clean和build
  17. SSL 3.0 安全漏洞修复方法
  18. 7个秘诀,带你由数据分析师成长为数据科学家
  19. 一图解千言,从兴趣意念直达搜索目标!
  20. Matlab:创建工程

热门文章

  1. 值得用心学习的22种习惯与风格
  2. 千峰 Servlet
  3. Gartner:今年Q1华为手机销量稳居第二位 苹果iPhone沦为第三
  4. 学C的狠招:Debug调试
  5. 64.圣诞节动画特效
  6. 利用Python对NBA SportUV数据进行可视化及分析 1
  7. DETR学习分享:内含PPT分享下载
  8. 各行业的联络中心解决方案
  9. 结束键盘输入的快捷键linux,linux 命令使用
  10. 【本科数学基础知识整理】