PHP实现物流查询(通过快递网API实现)
物流查询实现
引 言:目前快递公司太多了,不可能一个一个去申请api查询。这个时候,就可以通过合作,找一些中间商合作。我试了两家,一家是快递100,一家是快递网。 他们都需要申请key。但是快递100有点变态,不允许查询热门物流,什么三通一达,顺丰等等都查询不了。快递网就很好了。至少都可以查到。
1.申请key
到快递网,填写申请,一般都会通过的。
2.物流管理,建表把物流公司管理起来

3.配置参数
把一些定量,配置起来,方便统一管理
<?php
// 物流 采用快递网http://www.kuaidi.com的api数据
return array(
'kuaidi_key'=>'xxxxxxxxxxxxxx', // 这是申请的key值,支持每天2000次查询。是次,不是件。如果正式使用,可以跟快递网申请企业号。
'kuaidi_iframe'=>'http://www.kuaidi.com/cominterface1616.html',
'kuaidi_api'=>'http://api.kuaidi.com/openapi.html'
);
?>
4.编写函数
因为这是一个通用的函数,最好放到基类中,并且具有灵活性,可以传递参数,注释要清晰,方便他人使用。
/**
* 获取物流信息
* @author jim
* @param String $com 物流公司编号
* @param String $nu 物流单号,快递单号
* @param String $show 0表示返回json,1表示返回xml
* @param String $muti 0表示多行完整信息,1表示一行信息
* @param String $order desc asc 按时间降序,升序
* @return Array
* status
* 0:物流单号暂无结果;
* 3:在途,快递处于运输过程中;
* 4:揽件,快递已被快递公司揽收并产生了第一条信息;
* 5:疑难,快递邮寄过程中出现问题;
* 6:签收,收件人已签收;
* 7:退签,快递因用户拒签、超区等原因退回,而且发件人已经签收;
* 8:派件,快递员正在同城派件;
* 9:退回,货物处于退回发件人途中;
*
*/
protected function getExpress($com,$nu,$show = '0',$muti = '0',$order = 'desc') { //子类以及子类的子类可以访问
$id = trim(C('kuaidi_key'));
$kuaidi_api = trim(C('kuaidi_api'));
$url = $kuaidi_api.'?id='.$id.'&com='.$com.'&nu='.$nu.'&show='.$show.'&muti='.$muti.'&order='.$order;
$result = json_decode(file_get_contents($url),true);
return $result;
}
tips: 别的地方,想用就可以调用了。返回纯净的数组数据,自己去处理成美丽的网页吧!
附上:快递网,快递公司对应的编号
分类 快递公司代码 公司名称
A
aae AAE快递
aramex Aramex快递
B
bht BHT快递
youzhengguonei 包裹/平邮/挂号信
baifudongfang 百福东方物流
huitongkuaidi 百世汇通快递
C
coe COE(东方快递)
city100 城市100
D
depx DPEX
disifang 递四方
dsukuaidi D速物流
debangwuliu 德邦物流
datianwuliu 大田物流
dhl DHL国际快递
E
ems EMS快递
emsguoji EMS国际
F
fedex FedEx(国际)
fedexus FedEx(美国)
rufengda 凡客如风大
feikangda 飞康达物流
feibaokuaidi 飞豹快递
G
gangzhongnengda 港中能达物流
youzhengguonei 挂号信
youzhengguoji 国际邮件
youzhengguonei 国内邮件
gongsuda 共速达
guotongkuaidi 国通快递
H
hengluwuliu 恒路物流
huaxialongwuliu 华夏龙物流
J
jiayiwuliu 佳怡物流
jiayunmeiwuliu 加运美快递
jixianda 急先达物流
jialidatong 嘉里大通
jd 京东快递
jindawuliu 金大物流
K
kuaijiesudi 快捷快递
kangliwuliu 康力物流
kuayue 跨越物流
L
lianhaowuliu 联昊通物流
longbangwuliu 龙邦速递
lianbangkuaidi 联邦快递
lejiedi 乐捷递
lijisong 立即送
M
minghangkuaidi 民航快递
meiguokuaidi 美国快递
menduimen 门对门
mingliangwuliu 明亮物流
N
ganzhongnengda 能达速递
P
pingandatengfei 平安达腾飞
peixingwuliu 陪行物流
Q
quanfengkuaidi 全峰快递
quanyikuaidi 全一快递
quanritongkuaidi 全日通快递
quanchenkuaidi 全晨快递
sevendays 7天连锁物流
R
rufengda 如风达快递
S
shentong 申通快递
shunfeng 顺丰速运
suer 速尔快递
haihongwangsong 山东海红
shenghuiwuliu 盛辉物流
shengfengwuliu 盛丰物流
shangda 上大物流
santaisudi 三态速递
shenganwuliu 圣安物流
T
tnt TNT快递
tiantian 天天快递
tiandihuayu 天地华宇
tonghetianxia 通和天下
tianzong 天纵物流
U
youshuwuliu UC优速快递
W
wanxiangwuliu 万象物流
wanjiawuliu 万家物流
X
xinbangwuliu 新邦物流
xinfengwuliu 信丰物流
Y
yuantong 圆通速递
yunda 韵达快运
yuntongkuaidi 运通快递
youzhengguonei 邮政国内
youzhengguoji 邮政国际
yuanchengwuliu 远成物流
yafengsudi 亚风速递
youshuwuliu 优速快递
yuananda 源安达快递
yuanfeihangwuliu 原飞航物流
yuefengwuliu 越丰物流
Z
zhongtong 中通快递
zhaijisong 宅急送
zhongtiewuliu 中铁快运
ztky 中铁物流
zhongyouwuliu 中邮物流
zhongtianwanyun 中天万运
zhengzhoujianhua 郑州建华
zhimakaimen 芝麻开门
PHP实现物流查询(通过快递网API实现)的更多相关文章
- 物流一站式单号查询之快递鸟API接口(附Demo源码)
连载篇提前看 物流一站式单号查询之快递鸟API接口 物流一站式查询之TrackingMore篇 物流一站式查询之顺丰接口篇 物流一站式查询之快递100 前情提要 前三篇中,我们已经从注册.申请接口.调 ...
- 物流跟踪 调用快递鸟API
概要:关于调用快递鸟API,我有几句话想说,有几行代码想写 业务需求:就是做做商城,卖卖东西.然后需要做个物流跟踪的功能 需要获取的信息大概就是这个样子 现在看这个快递怎么这么慢 如何实现? 直接调用 ...
- APISpace 全球快递物流查询API接口 免费好用
前言 随着我国电子商务的迅猛发展,物流行业也开始突飞猛进,人们的日常生活越来越离不开快递服务,查快递.寄快递的需求越来越大,随之而来,常用快递接口的需求也越来越大. 全国快递查询接口,支持各大快递 ...
- 微信小程序+OLAMI(欧拉蜜)自然语言API接口制作智能查询工具--快递、聊天、日历等
微信小程序最近比较热门,再加上自然语义理解也越来越被人关注,于是我想赶赶潮流,做一个小程序试试.想来想去快递查询应该是一种比较普遍的需求. 如果你也在通过自然语言接口做点什么,希望我的这篇博客能帮到你 ...
- java物流查询接口测试代码-快递100
测试代码 返回json格式,xml/html格式自行修改参数 import java.io.IOException; import java.io.InputStream; import java.n ...
- 如何使用Postman快速简单的调用快递物流平台快递鸟API接口
前沿 快递鸟是一家聚合类的第三方快递物流平台,目前该平台提供的产品主要以API为主.由于API不能直观的看到产品效果,需要进行API对接联调成功后才能真实的看到产品的实际效果.但是如果一上来就写代码进 ...
- [转载]中国天气网API
最近在做个网站要用到天气网的api,在网上找了些参考资料,这篇文章对天气网api的介绍比较详细,所以转载之,谢谢原作者的辛勤劳动和奉献精神. 原文地址:http://g.kehou.com/t1033 ...
- 用c#查询各快递物流信息
前面介绍过<用快递100接口查询各快递物流信息>,里面用的是API接口,但有些快递不支持这种方式,本文介绍的HtmlAPI支持所有快递公司. 支持包括EMS.邮政.顺丰和申通在内的所有公司 ...
- 聚币网API[Python2版]
聚币 现货 API [Python2版] 一.utils.py,基础类,包括HTTP 请求.签名等 # -*- coding: utf-8 -*- import hashlib import hmac ...
随机推荐
- DBA_基本Bash语法汇总(汇总)
2014-06-26 Created By BaoXinjian
- POJ 1986 DIstance Query LCA水题
给出一棵树,对于每一个询问,给出2个节点,输出2个节点的距离. 输入中有字母,那个是没有用的,不用管. 思路: 0.选择编号为1的节点作为树的root (注意:有些题的边是单向的,这时候我们要根据节点 ...
- [Tex学习]给汉字注音
\documentclass{article} \usepackage[CJK]{ruby} \usepackage{pinyin} \begin{document} \begin{CJK*}{GBK ...
- 配置cwrsync实现windows2008和centos7文件定时同步
一.准备 二.安装 1.安装cwRsyncServer_4.0.5_Installer.exe 安装过程中提示创建用于windows服务的windows用户名,需要注意的是密码一定要它自己生成的密码的 ...
- tuple解包给类的构造函数
首先我们的第一步当然是将tuple解包.tuple提供了一个get函数来获取第N个元素.例如: get<1>(make_tuple(...)); 要将一个tuple全部拆解,就可以使用通过 ...
- python 正则表达式 demo
1.匹配大小写和数字,并且大小写数字均要有,且字符串长度为6~20位 ^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[a-zA-Z\d]{6,20}$ import repattern ...
- 30天轻松学习javaweb_模拟tomcat
运行 javac Server.java 编译java文件 执行 java Server 运行程序 在ie中输入 http://localhost:9999/ 打开模拟的服务程序 import jav ...
- Eclipse中Build Workspace 优化
在开发中,发现eclipse 的 Build Workspace 很慢很慢,只要是由于验证js, css, xml 等等静态的文件导致. 我遇到的问题是,项目中有一个js文件很大,怎么都不能Build ...
- [Flex] PopUpButton系列 —— 将DataGrid作为弹出内容
<?xml version="1.0" encoding="utf-8"?> <!--Flex中如何创建一个可以弹出DataGrid作为菜单的 ...
- 服务器返回数组,data[0]得到的总是不对?如何处理?
我用asp.net MVC 写了服务器代码,返回数组,ajax怎么处理返回的数组内容? 您好,首先用eval将获得的ajax数据转化成json对象并赋值给一个变量. 比如: var obj=eval( ...
