Giter Club home page Giter Club logo

logistics's Introduction

Logistics

简单便捷查询运单快递信息

Build Status StyleCI build status Latest Stable Version Total Downloads Latest Unstable Version License

支持查询接口平台

平台 次数 是否需要快递公司编码 免费版支持的快递公司
快递100 100次(首次申请) Y
快递鸟 500单/天(免费) Y 支持申通、圆通、百世、天天,其他快递公司可自行尝试,不支持顺丰
聚合数据 100次(首次申请) Y
极速数据 1000次(免费) N
数据智汇 100次(免费) N

配置须知

  • 只有快递鸟申请后会有两个,一个是用户ID, 填入到app_secret,另外一个则是api_key, 填入app_key, 其他则把申请的key填入到app_key

环境需求

  • PHP >= 7.0

安装

$ composer require wythe/logistics -vvv

使用

use Wythe\Logistics\Logistics;
$config = [
    'juhe' => ['app_key' => 'app_key', 'vip' => false],
    'shujuzhihui' => ['app_key' => 'app_key', 'vip' => false],
    'jisu' => ['app_key' => 'app_key', 'vip' => false],
    'kuaidibird' => ['app_key' => 'app_key', 'app_secret' =>  'app_secret', 'vip' =>
            false],
    'kuaidi100' => ['app_key' => '']
];
$logistics = new Logistics($config);

参数说明

array query(string $code, $channels = ['kuaidi100'], string $company = '')
array queryByProxy(array $proxy, string $code, $channels = ['kuaidi100'], string $company = '')
  • query 与 queryByProxy 返回数组结构是一样, 只是多了一个参数代理IP
  • $proxy - 代理地址 结构: ['proxy' => '代理IP:代理端口']
  • $code - 运单号
  • $channel - 渠道名称, 可选参数,默认快递鸟.
  • $company - 快递公司 具体看 SupportLogistics 文件

快递 100 接口获取物流信息 所有接口返回格式是统一

use Wythe\Logistics\Logistics;
$config = [
    'juhe' => ['app_key' => 'app_key', 'vip' => false],
    'shujuzhihui' => ['app_key' => 'app_key', 'vip' => false],
    'jisu' => ['app_key' => 'app_key', 'vip' => false],
    'kuaidibird' => ['app_key' => 'app_key', 'app_secret' =>  'app_secret', 'vip' =>
            false],
    'kuaidi100' => ['app_key' => '']
];
$logistics = new Logistics($config);
$logistics->query('12313131231', ''); // 第二参数选填,可以为字符串或数组, 默认快递鸟
$logistics->query('12313131231', 'kuaidi100');
$logistics->query('12313131231', ['kuaidi100']);

示例:

[
   'kuaidi100' => [
       'channel' => 'kuaidi100',
       'status' => 'success',
       'result' => [
           [
               'status' => 200,
               'message'  => 'OK',
               'error_code' => 0,
               'data' => [
                   ['time' => '2019-01-09 12:11', 'description' => '仓库-已签收'],
                   ['time' => '2019-01-07 12:11', 'description' => '广东XX服务点'],
                   ['time' => '2019-01-06 12:11', 'description' => '广东XX转运中心']
               ],
               'logistics_company' => '申通快递',
               'logistics_bill_no' => '12312211'
           ],
           [
               'status' => 201,
               'message' => '快递公司参数异常:单号不存在或者已经过期',
               'error_code' => 0,
               'data' => '',
               'logistics_company' => '',
               'logistics_bill_no' => ''
           ]
       ]
   ]
]

多接口获取物流信息

use Wythe\Logistics\Logistics;
$config = [
    'juhe' => ['app_key' => 'app_key', 'vip' => false],
    'shujuzhihui' => ['app_key' => 'app_key', 'vip' => false],
    'jisu' => ['app_key' => 'app_key', 'vip' => false],
    'kuaidibird' => ['app_key' => 'app_key', 'app_secret' =>  'app_secret', 'vip' =>
            false],
    'kuaidi100' => ['app_key' => '']
];
$logistics = new Logistics($config);
$logistics->query('12313131231');
$logistics->query('12313131231', ['kuaidi100', 'ickd']);

示例:

[
   'kuaidi100' => [
       'channel' => 'kuaidi100',
       'status' => 'success',
       'result' => [
           [
               'status' => 200,
               'message'  => 'OK',
               'error_code' => 0,
               'data' => [
                   ['time' => '2019-01-09 12:11', 'description' => '仓库-已签收'],
                   ['time' => '2019-01-07 12:11', 'description' => '广东XX服务点'],
                   ['time' => '2019-01-06 12:11', 'description' => '广东XX转运中心']
               ],
               'logistics_company' => '申通快递',
               'logistics_bill_no' => '12312211'
           ],
           [
               'status' => 201,
               'message' => '快递公司参数异常:单号不存在或者已经过期',
               'error_code' => 0,
               'data' => '',
               'logistics_company' => '',
               'logistics_bill_no' => ''
           ]
       ]
   ],
   'ickd' => [
       'channel' => 'ickd',
       'status' => 'success',
       'result' => [
           [
               'status' => 200,
               'message'  => 'OK',
               'error_code' => 0,
                'data' => [
                    ['time' => '2019-01-09 12:11', 'description' => '仓库-已签收'],
                    ['time' => '2019-01-07 12:11', 'description' => '广东XX服务点'],
                    ['time' => '2019-01-06 12:11', 'description' => '广东XX转运中心']
                ],
                'logistics_company' => '申通快递',
                'logistics_bill_no' => '12312211'
           ]
       ]
   ]
]

参考

最后

欢迎提出 issue 和 pull request

License

MIT

logistics's People

Contributors

uuk020 avatar ailonhuang avatar almas1992 avatar samnela avatar stylecibot avatar successgo avatar netbuilding avatar liujundezhanghao avatar ramzeng avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.