bastiaanh/overheid-kvk

Overheid.io KvK API PHP客户端

v1.0.0 2016-07-23 16:01 UTC

This package is not auto-updated.

Last update: 2024-09-28 19:09:46 UTC


README

overheid-kvk提供了一个PHP包装类,用于使用Overheid.io KvK API。它会在需要时自动请求额外的资源,因此您可以使用foreach轻松遍历大量结果集。

使用Composer安装

添加依赖

composer require bastiaanh/overheid-kvk

已知限制

当前库不验证参数,因此请确保首先验证任何用户输入。

由Web服务返回的错误消息也无法检测。这应该得到改进。

使用说明

设置

实例化类并设置从Overheid.io获得的API密钥

$kvk = new Overheid\Kvk();
$kvk->setApiKey('459a874e2f3...');

遍历数据集进行搜索

定义

Overheid\Kvk::search([parameters : array = array()]):Overheid\Resultset

示例

指定如此处描述的参数,并遍历结果。

/** @var Overheid\Resultset $results */
$results = $kvk->search(array('filters' => array('postcode' => '3083cz')));

echo count($results) . ' results <br/>';
foreach ($results as $index => $result) {
    echo 'result ' . $index . ': <br />';
    var_dump($result);
}

结果

30 results
result 0:
array (size=3)
  'dossiernummer' => string '24156072' (length=8)
  'handelsnaam' => string 'Haarzelf' (length=8)
  'subdossiernummer' => string '0002' (length=4)

result 1:
array (size=3)
  'dossiernummer' => string '24477501' (length=8)
  'handelsnaam' => string 'Anroga' (length=6)
  'subdossiernummer' => string '0000' (length=4)

// ...more...

result 28:
array (size=3)
  'dossiernummer' => string '28111270' (length=8)
  'handelsnaam' => string 'Fiscoop Holding B.V.' (length=20)
  'subdossiernummer' => string '0000' (length=4)

result 29:
array (size=3)
  'dossiernummer' => string '28111275' (length=8)
  'handelsnaam' => string 'Fiscoop Rotterdam-Zuid B.V.' (length=27)
  'subdossiernummer' => string '0000' (length=4)

如果返回超过100个结果,循环将根据需要请求额外的记录。

获取文档号详细信息

定义

Overheid\Kvk::get(dossierNr : string, [subDossierNr : string = '0000']):array

示例

$details = $kvk->get('20106830');
var_dump($result);

结果

array (size=15)
  'actief' => boolean true
  'bestaandehandelsnaam' => string 'Freshheads B.V.' (length=15)
  'dossiernummer' => string '20106830' (length=8)
  'handelsnaam' => string 'Freshheads B.V.' (length=15)
  'handelsnaam_url' => string 'freshheads-bv' (length=13)
  'huisnummer' => string '21' (length=2)
  'huisnummertoevoeging' => string '' (length=0)
  'plaats' => string 'Tilburg' (length=7)
  'postcode' => string '5041EB' (length=6)
  'statutairehandelsnaam' => string 'Freshheads B.V.' (length=15)
  'straat' => string 'Wilhelminapark' (length=14)
  'straat_url' => string 'wilhelminapark' (length=14)
  'subdossiernummer' => string '0000' (length=4)
  'type' => string 'Hoofdvestiging' (length=14)
  'vestigingsnummer' => int 18389392

获取搜索词建议

定义

Overheid\Kvk::suggest(query : string, [size : int|null = null], [fields : array|null = null]):array

示例

$result = $kvk->suggest('oudet', 5);
var_dump($result);

结果

array (size=2)
  'handelsnaam' => 
    array (size=5)
      0 => 
        array (size=2)
          'text' => string 'Oude Tijdhof Optiek' (length=19)
          'extra' => 
            array (size=1)
              'id' => string '62540661/0000' (length=13)
      1 => 
        array (size=2)
          'text' => string 'Oude Tijdhof Optiek B.V.' (length=24)
          'extra' => 
            array (size=1)
              'id' => string '05076440/0000' (length=13)
      2 => 
        array (size=2)
          'text' => string 'Oude Tol Groenprojecten' (length=23)
          'extra' => 
            array (size=1)
              'id' => string '22063560/0000' (length=13)
      3 => 
        array (size=2)
          'text' => string 'Oude Toren Beheer B.V.' (length=22)
          'extra' => 
            array (size=1)
              'id' => string '17073018/0000' (length=13)
      4 => 
        array (size=2)
          'text' => string 'Oude Toren Consultancy' (length=22)
          'extra' => 
            array (size=1)
              'id' => string '57244359/0000' (length=13)
  'straat' => 
    array (size=5)
      0 => 
        array (size=2)
          'text' => string 'OUDE TELGTERWEG' (length=15)
          'extra' => 
            array (size=1)
              'postcode' => string '3851EE' (length=6)
      1 => 
        array (size=2)
          'text' => string 'Oude Telgterweg' (length=15)
          'extra' => 
            array (size=1)
              'postcode' => string '3853PH' (length=6)
      2 => 
        array (size=2)
          'text' => string 'Oude Trambaan' (length=13)
          'extra' => 
            array (size=1)
              'postcode' => string '6093CE' (length=6)
      3 => 
        array (size=2)
          'text' => string 'OUDE TRAMBAAN' (length=13)
          'extra' => 
            array (size=1)
              'postcode' => string '2265DA' (length=6)
      4 => 
        array (size=2)
          'text' => string 'OUDE TERBORGSEWEG' (length=17)
          'extra' => 
            array (size=1)
              'postcode' => string '7004KA' (length=6)