lsv / glsdk-parcelshop-api
GLS ParcelShop 的 Web 服务
1.0.4
2017-06-27 10:29 UTC
Requires
- doctrine/collections: ~1.0
- guzzlehttp/guzzle: ^6.0
Requires (Dev)
- fabpot/php-cs-fixer: ~1.4
- pdepend/pdepend: ~2.0
- phing/phing: ~2.0
- phpdocumentor/phpdocumentor: ~2.0
- phploc/phploc: ~2.0
- phpmd/phpmd: ~2.0
- phpunit/phpunit: ~4.0
- satooshi/php-coveralls: ~0.6
- sebastian/phpcpd: ~2.0
- squizlabs/php_codesniffer: ~1.4
This package is auto-updated.
Last update: 2024-09-10 10:42:25 UTC
README
从以下任一方式获取包裹店
- 包裹店编号
- 丹麦邮编
- 地址附近
- 或获取丹麦所有包裹店
通过 ID 获取单个包裹店
<?php require 'vendor/autoload.php'; use Lsv\GlsDk\ParcelShop; $p = new ParcelShop(); $shop = $p->getParcelshop( ID );
如果未找到,则抛出 Exceptions\ParcelNotFoundException
异常
返回 $shop
是一个 Entity\Parcelshop
对象
通过邮编获取包裹店
<?php require 'vendor/autoload.php'; use Lsv\GlsDk\ParcelShop; $p = new ParcelShop(); $shops = $p->getParcelshopsFromZipcode( ZIPCODE );
如果没有找到,则抛出 Exceptions\NoParcelsFoundInZipcodeException
异常
返回 $shops
是一个包含 Entity\Parcelshop
的数组
通过地址获取包裹店
<?php require 'vendor/autoload.php'; use Lsv\GlsDk\ParcelShop; $p = new ParcelShop(); $shops = $p->getParcelshopsNearAddress( STREET , ZIPCODE, 20 );
第三个参数是你想要的数量
如果地址未知,则抛出 Exceptions\MalformedAddressException
异常
返回 $shops
是一个包含 Entity\Parcelshop
的数组
获取丹麦所有包裹店
<?php require 'vendor/autoload.php'; use Lsv\GlsDk\ParcelShop; $p = new ParcelShop(); $shops = $p->getAllParcelshops();
返回 $shops
是一个包含 Entity\Parcelshop
的数组
添加重试 guzzle 客户端
首先使用 composer 安装它
composer require guzzlehttp/retry-subscriber
现在创建我们的客户端
<?php require 'vendor/autoload.php'; use Lsv\GlsDk\ParcelShop; use GuzzleHttp\Subscriber\Retry\RetrySubscriber; $retry = new RetrySubscriber([ 'filter' => RetrySubscriber::createStatusFilter() ]); $client = new GuzzleHttp\Client(); $client->getEmitter()->attach($retry); $p = new ParcelShop($client); $shops = $p->getAllParcelshops();
切换到另一个 GLS 国家
<?php require 'vendor/autoload.php'; use Lsv\GlsDk\ParcelShop; $p = new ParcelShop(null, 'url-to-webservice'); $shops = $p->getAllParcelshops();