物流查询实现

引 言:目前快递公司太多了,不可能一个一个去申请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实现)的更多相关文章

  1. 物流一站式单号查询之快递鸟API接口(附Demo源码)

    连载篇提前看 物流一站式单号查询之快递鸟API接口 物流一站式查询之TrackingMore篇 物流一站式查询之顺丰接口篇 物流一站式查询之快递100 前情提要 前三篇中,我们已经从注册.申请接口.调 ...

  2. 物流跟踪 调用快递鸟API

    概要:关于调用快递鸟API,我有几句话想说,有几行代码想写 业务需求:就是做做商城,卖卖东西.然后需要做个物流跟踪的功能 需要获取的信息大概就是这个样子 现在看这个快递怎么这么慢 如何实现? 直接调用 ...

  3. APISpace 全球快递物流查询API接口 免费好用

    前言   随着我国电子商务的迅猛发展,物流行业也开始突飞猛进,人们的日常生活越来越离不开快递服务,查快递.寄快递的需求越来越大,随之而来,常用快递接口的需求也越来越大. 全国快递查询接口,支持各大快递 ...

  4. 微信小程序+OLAMI(欧拉蜜)自然语言API接口制作智能查询工具--快递、聊天、日历等

    微信小程序最近比较热门,再加上自然语义理解也越来越被人关注,于是我想赶赶潮流,做一个小程序试试.想来想去快递查询应该是一种比较普遍的需求. 如果你也在通过自然语言接口做点什么,希望我的这篇博客能帮到你 ...

  5. java物流查询接口测试代码-快递100

    测试代码 返回json格式,xml/html格式自行修改参数 import java.io.IOException; import java.io.InputStream; import java.n ...

  6. 如何使用Postman快速简单的调用快递物流平台快递鸟API接口

    前沿 快递鸟是一家聚合类的第三方快递物流平台,目前该平台提供的产品主要以API为主.由于API不能直观的看到产品效果,需要进行API对接联调成功后才能真实的看到产品的实际效果.但是如果一上来就写代码进 ...

  7. [转载]中国天气网API

    最近在做个网站要用到天气网的api,在网上找了些参考资料,这篇文章对天气网api的介绍比较详细,所以转载之,谢谢原作者的辛勤劳动和奉献精神. 原文地址:http://g.kehou.com/t1033 ...

  8. 用c#查询各快递物流信息

    前面介绍过<用快递100接口查询各快递物流信息>,里面用的是API接口,但有些快递不支持这种方式,本文介绍的HtmlAPI支持所有快递公司. 支持包括EMS.邮政.顺丰和申通在内的所有公司 ...

  9. 聚币网API[Python2版]

    聚币 现货 API [Python2版] 一.utils.py,基础类,包括HTTP 请求.签名等 # -*- coding: utf-8 -*- import hashlib import hmac ...

随机推荐

  1. Codeforces Round #367 (Div. 2) Hard problem

    Hard problem 题意: 有n个字符串,对第i个字符串进行反转操作代价为ci. 要使n个字符串按照字典序从小到大排列,最小的代价是多少. 题解: 反转就是reverse操作,比如说45873反 ...

  2. Python 结巴分词(2)关键字提取

    提取关键字的文章是,小说完美世界的前十章: 我事先把前十章合并到了一个文件中: 然后直接调用关键字函数: import sys sys.path.append('../') import jieba ...

  3. 【转】select和epoll模型的差异

    http://www.cppblog.com/converse/archive/2008/10/12/63836.html epoll为什么这么快 epoll是多路复用IO(I/O Multiplex ...

  4. get/close not same thread Druid 连接池一个设置

    我就郁闷了,1000W+数据审核每次总是到一半就出这么个错,仔细找找原来是一个配置项的小问题,removeAbandonedTimeout 这个代表你从连接池取出一个连接多少秒之后你还没还回来,那就强 ...

  5. 使用spool导出数据

    源地址:http://wallimn.iteye.com/blog/472182 set trimspool on set echo off set feedback off set pagesize ...

  6. sql执行返回值存储

    List<Map> list = SqlRunner.queryMapList(sql); if(list != null && !list.isEmpty()){ Has ...

  7. Java UDP网络编程 - 最简单示例

    UDP也是网络通讯中的一个重要协议,与TCP区别可参见浅谈TCP/IP 和 UDP的区别,本文就对Java UDP通讯做一个简单例子介绍 服务端: package wyf; import java.i ...

  8. Plan9 与 Plan9port

    Plan9 Plan9 是一个操作系统.由贝尔实验室开发的,其主要的负责人是Rob Pike(现在在google工作,负责Go语言的开发). 参考:http://www.cnblogs.com/yjf ...

  9. python实现的json数据以HTTP GET,POST,PUT,DELETE方式页面请求

    一.JSON简介 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写.同时也易于机器解析和生成.它基于JavaScript Programm ...

  10. SQL 语句转换格式函数Cast、Convert 区别

    SQL 语句转换格式函数Cast.Convert CAST和CONVERT都经常被使用.特别提取出来作为一篇文章,方便查找. CAST.CONVERT都可以执行数据类型转换.在大部分情况下,两者执行同 ...