dadata / apiclient
http://dadata.ru API 的客户端库
2.0.2
2021-05-14 11:45 UTC
Requires
- php: >=5.6
- guzzlehttp/guzzle: >=6.3.0
Requires (Dev)
- phpunit/phpunit: ^4.0
This package is not auto-updated.
Last update: 2024-09-28 03:38:41 UTC
README
用于操作 http://dadata.ru 网站的 REST API 的库。允许根据企业信息查找组织和银行,以及根据地址获取完整信息。
要求
安装
您可以使用 Composer 或直接 下载发行版
Composer
推荐通过 Composer 安装。如果尚未安装 Composer,请遵循 安装说明。
在控制台中执行以下命令安装库
#!console
composer require dadata/apiclient
下载发行版
如果您不想使用 Composer,可以下载包含库的存档包。发行版页面包含稳定版本的列表。您可以在此页面上 下载任何可用的发行版。
解压缩存档内容到 vendor 文件夹,并在 composer.json 中添加类路径
#!json
"classmap": [
"vendor/google/apiclient/src",
"vendor/dadata/apiclient/src"
]
示例
要开始工作,需要获取 API 客户端和 REST 服务
#!php
<?php
$client = new \Dadata_Client(array('api_key' => 'YOUR_API_KEY', 'content_type' => 'application/json'));
$rest = new \Dadata_Service_Rest($client);
通过 INN 获取组织数据
#!php
<?php
$suggest = $rest->suggest->party(array('query' => '7604254988'));
foreach($suggest->getSuggestions() as $party){
$organization = $party->getData(); // получение данных об организации
$name = $organization->getValue(); // Наименование организации одной строкой (для списка подсказок)
$nameFull = $organization->getUnrestrictedValue(); // Наименование организации одной строкой (полное)
$address = $organization->getAddress(); // получение адреса организации
}
获取地址
#!php
<?php
$suggest = $rest->suggest->address(array('query' => 'Ярославль Победы 38', 'count' => 10));
foreach($suggest->getSuggestions() as $address){
$value = $address->getValue(); // Адрес одной строкой (как показывается в списке подсказок)
$unrestrictedValue = $address->getUnrestrictedValue(); // Адрес одной строкой (полный, от региона)
$data = $address->getData(); // Получение подробных данных об адресе в виде объекта.
}
通过 БИК 获取银行数据
#!php
<?php
$suggest = $rest->suggest->bank(array('query' => '046577964'));
foreach($suggest->getSuggestions() as $bank){
$bankName = $bank->getValue(); // Наименование банка одной строкой (для списка подсказок)
$bankNameFull = $bank->getUnrestrictedValue(); // Наименование банка одной строкой (полное)
$data = $item->getData(); // Подробные данные о банке.
$bankAddress = $item->getData()->getAddress(); // Адрес банка
$rkc = $item->getData()->getRkc(); // Расчетно-кассовый центр. Объект такой же структуры, как сам банк
$rkcAddress = $item->getData()->getRkc()->getAddress(); // Адрес расчетно-кассового центра
}
通过 IP 定位地理位置
#!php
<?php
$geo = $rest->geo->location(array('ip' => '128.74.215.229'));
$location = $geo->getLocation();
$address = $location->getValue(); // Получение адреса одной строкой (для списка подсказок)
$addressFull = $location->getUnrestrictedValue(); // Получение адреса одной строкой (полного)
$data = $location->getData(); // Получение подробных данных об адресе в виде объекта
$coords = $data->getCoords(); // Получение точных координат в виде строки (lat,lon)
Symfony DadataApi Bundle
使用现成的 DadataApiBundle 在 Symfony 框架中工作。