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 芝麻开门


本文转自TBHacker博客园博客,原文链接:http://www.cnblogs.com/jiqing9006/p/5166492.html,如需转载请自行联系原作者

相关文章
|
1月前
|
API
国外地区经纬度查询免费API接口教程
此接口用于查询国外地区的经纬度信息,支持POST和GET请求方式。需提供用户ID、用户KEY、省级名称及具体地点。返回数据包括地区名称(中英文)、国家代码及经纬度等详细信息。示例请求与响应数据详见文档。
88 29
|
29天前
|
API
天气预报15日-墨迹天气-地址查询版免费API接口教程
该接口提供15日天气预报服务,通过指定地址获取墨迹天气预报。支持POST或GET请求,需提供用户ID、KEY、省份名称及地点等参数。返回数据包括15天内每天的天气详情,如最高最低温度、天气变化及图标等。示例中使用的ID和KEY为公共测试账号,建议使用个人账号以获得更高调用频率。
|
1月前
|
API
全国行政区划查询免费API接口教程
该接口提供全国(不含港澳台)各级行政区划查询服务,适用于地址填写、资料登记等场景。支持5级划分:省、市、区县、乡镇、村。请求需提供用户ID、KEY及查询级别等参数,返回地名列表或错误信息。 示例中ID和KEY为公共测试用,建议使用个人ID和KEY以享受更高调用频率。
127 23
|
19天前
|
缓存 算法 API
查询域名WHOIS信息免费API接口教程
该API用于查询顶级域名的WHOIS信息,不支持国别域名和中文域名。通过POST或GET请求,需提供用户ID、KEY及待查询域名。返回信息包括域名状态、注册商、时间等详细数据。示例与文档见官网。
|
19天前
|
API
icp备案查询免费API接口教程
该接口用于查询指定域名的ICP备案信息,支持POST或GET请求方式。请求时需提供用户ID、用户KEY及待查询的域名,可选参数为查询通道。响应中包含状态码、消息内容、备案号、备案主体、域名及审核时间等信息。示例中提供了GET和POST请求方式及返回数据样例。
|
1月前
|
API
天气预报1天-中国气象局-地址查询版免费API接口教程
此接口提供中国气象局官方的当日天气信息,支持POST和GET请求,需提供用户ID、KEY、省份及具体地点。返回数据包括状态码、消息、天气详情等。示例中使用的ID与KEY为公共测试用,建议使用个人ID与KEY以享受更高调用频次。
|
1月前
|
API
区号查询免费API接口教程
该接口用于查询指定城市的电话区号、邮编及区划代码等信息,支持通过区号反查城市详情。请求方式为POST或GET,需提供用户ID、KEY及城市/区号参数。返回信息包括状态码、省份、城市、区号、邮编和区划代码。示例请求和响应详见文档。
|
25天前
|
JSON 数据挖掘 API
如何使用PHP开发1688商品详情API接口
本文详细介绍了如何使用PHP开发1688商品详情API接口,涵盖从注册账号、申请权限、配置环境到代码实现的全过程。通过设置请求头、参数及生成签名,利用cURL或GuzzleHttp库发送请求并处理响应,最终实现商品详情数据的获取与应用,助力电商发展。
31 1
|
1月前
|
SQL 安全 PHP
PHP开发中防止SQL注入的方法,包括使用参数化查询、对用户输入进行过滤和验证、使用安全的框架和库等,旨在帮助开发者有效应对SQL注入这一常见安全威胁,保障应用安全
本文深入探讨了PHP开发中防止SQL注入的方法,包括使用参数化查询、对用户输入进行过滤和验证、使用安全的框架和库等,旨在帮助开发者有效应对SQL注入这一常见安全威胁,保障应用安全。
54 4
|
1月前
|
API
查询城市手机号段免费API接口教程
此API用于查询指定城市的手机号段、服务商、区号、邮编等信息。支持POST或GET请求,需提供用户ID、KEY及城市名称等参数。返回数据包括状态码、信息提示、查询数量、最大页码、当前页码、省份、城市、区号、邮编、区划代码及数据集等。示例中提供的ID和KEY为公共测试用,建议使用个人ID和KEY以获得更高的调用频率。
下一篇
DataWorks