arthurtavaresdev/cnpj-promise-php

使用 Promises 在 Minha Receita、CNPJ Ws 等服务中搜索 CNPJ。

v0.1.0 2024-03-19 21:51 UTC

README

这是一个独立的 PHP 8.2+ 库,使用 Promises/A+ 实现对多个服务的 CNPJ 查询。

特性

  • 以并行方式执行请求,始终返回最快的结果;
  • 通过使用多个不同的服务提供商保证高可用性;
  • 使用 guzzle/promises 包中的 PHP Promises 实现开发;

安装

使用 composer 安装包

composer require arthurtavaresdev/cnpj-promise-php

使用方法

返回对象

使用整数值进行搜索,以对象形式返回响应。

use ArthurTavaresDev\CnpjPromise\CnpjPromise;

require 'vendor/autoload.php';

$cnpj = '27865757000102';
$company = CnpjPromise::fetch($cnpj);

/*
ArthurTavaresDev\CnpjPromise\Data\Company Object
(  
  +cnpj: "27865757000102"
  +legalName: "GLOBO COMUNICACAO E PARTICIPACOES S/A"
  +tradeName: "TV/REDE/CANAIS/G2C+GLOBO GLOBO.COM GLOBOPLAY"
  +incorporationDate: Carbon\CarbonImmutable,
  +mainCnae: "2054"
  +legalNature: "2054"
  +establishmentType: "DEMAIS"
  +revenue: 6983568523.86
  +isSimpleNational: false
)
*/

返回数组

使用整数值进行搜索,以数组形式返回响应。

use ArthurTavaresDev\CnpjPromise\CnpjPromise;

require 'vendor/autoload.php';

$cnpj = '27865757000102';
$company = CnpjPromise::fetch($cnpj)->toArray();

/*
array:9 [
  "cnpj" => "27865757000102"
  "legalName" => "GLOBO COMUNICACAO E PARTICIPACOES S/A"
  "tradeName" => "TV/REDE/CANAIS/G2C+GLOBO GLOBO.COM GLOBOPLAY"
  "incorporationDate" => "1986-01-31"
  "mainCnae" => "2054"
  "legalNature" => "2054"
  "establishmentType" => "DEMAIS"
  "revenue" => 6983568523.86
  "isSimpleNational" => false
]
*/

返回 Promise

使用整数值进行搜索,以 Promise 形式返回响应。

use ArthurTavaresDev\CnpjPromise\CnpjPromise;

require 'vendor/autoload.php';

$cnpjPromisse = new CnpjPromise();
$cnpjPromisse->promises('27865757000102');