/logistics

PHP 多接口获取快递物流信息包

Primary LanguagePHP

Logistics

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

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

重构版本

1.0.0

支持查询接口平台

平台 次数 是否需要快递公司编码
快递100 100单/天(免费) Y
快递鸟 3000单/天(免费) Y
聚合数据 100次(首次申请) Y
极速数据 1000次(免费) N
数据智汇 100次(免费) N
爱查快递 无限次(抓取接口, 无法保证数据正确性) N

环境需求

  • PHP >= 7.0

安装

$ composer require wythe/logistics -vvv

使用

use Wythe\Logistics\Logistics
$logistics = new Logistics()

参数说明

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 接口获取物流信息 所有接口返回格式是统一

$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' => ''
           ]
       ]
   ]
]

多接口获取物流信息

$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