bigbank / omniva
用于与 Omniva 网络API接口的库
0.2.0
2017-05-29 08:10 UTC
Requires
- php: >=5.6
- ext-curl: *
- ext-openssl: *
- ext-soap: *
- ext-xml: *
- league/container: ~2.0
Requires (Dev)
This package is not auto-updated.
Last update: 2024-09-23 07:00:34 UTC
README
一个PHP库,用于与Omniva(前爱沙尼亚邮政服务)网络API接口进行交互,无需处理SOAP(太多)。
安装
通过Composer
$ composer require bigbank/omniva
该库需要PHP >=5.6
,curl
,soap
和openssl
扩展。
使用
// Instantiate the main class $omniva = new Omniva; // Ask for a service (see: Services) $addressSearchService = $omniva->getService(AddressSearchInterface::class) ->setApiKey(getenv('OMNIVA_PASSWORD')); // Get a list of all matching addresses for a partial input $addresses = $addressSearchService->findAddresses('Tartu mnt 18'); print_r($addresses);
示例实现examples/search-address.php可以运行
$ OMNIVA_PASSWORD="<secret-string>" php examples/search-address.php
要使用HTTP代理,设置HTTP_PROXY
环境变量。
服务
该库提供以下服务的访问
地址搜索
根据部分输入获取物理地址列表。适用于地址自动完成等应用程序。
- 接口名称:
AddressSearchInterface
- Omniva服务名称:
ANDMETEENUSED AADRESSKOMPONENTIDE PÄRIMISE TEENUS 2 SISEND 5_1 (VERS.1)
- WSDL:https://otseturundus.post.ee/aadressid/ws/singleAddress2_5_1.wsdl
使用
$addressSearchService = $omniva->getService(AddressSearchInterface::class) ->setApiKey(getenv('OMNIVA_PASSWORD')) ->findAddresses('Tartu mnt 18');
您可以通过手动实例化AddressSearch
来更改Omniva API端点的URL
$addressSearchService = new AddressSearch( new SingleAddress2_5_1PortTypeService($soapOptions, $wsdlUrl), new SingleAddress2_5_1Request );
示例输出
Array
(
[0] => Array
(
[address] => Eesti Vabariik, Tartu maakond, Elva linn, Tartu maantee 18
[addressNumber] => 18
[county] => Tartu maakond
[countyId] => 0078
[designation] =>
[flatNumber] =>
[latitude] => 641443.84
[level] => A7
[longitude] => 6457217.29
[mailboxType] =>
[mainAddress] =>
[municipality] => Elva linn
[municipalityId] => 0170
[municipalityType] => linn
[nationalAddressId] => 7817000000000002H000019HC00000000
[omnivaAddressId] => 3702034
[postalIndex] => 61505
[postOfficeBoxNumber] =>
[settlement] =>
[settlementId] => 0000
[settlementType] =>
[status] => Kontrollitud, kehtiv
[territorialAddress] =>
[territorialAddressType] =>
[trafficSurface] => Tartu maantee
[trafficSurfaceType] => tee
)
)
变更日志
请参阅CHANGELOG了解最近更改的信息。
测试
$ composer test
开发
请参阅CONTRIBUTING了解详细信息。
定义
用于Omniva API术语的定义(爱沙尼亚语)
- EHAK - 爱沙尼亚行政和居民区分类器
- ADS - 地址信息管理系统
- 主地址 - 如果对象有多个地址但只使用一个,则此地址是必需的,另一个是备用。例如,如果一个位于今天角落的房子的两个地址,房子的一侧是主入口,那么这个地址就是主地址。
相关材料
这些材料(爱沙尼亚语)有助于理解地址领域。
安全性
如果您发现任何与安全相关的问题,请通过info@bigbank.ee电子邮件发送,而不是使用问题跟踪器。
致谢
许可证
Apache 2.0许可证(Apache-2.0)。请参阅许可证文件了解更多信息。