goetas-webservices/euro-vies-client

1.0.0 2018-11-16 10:39 UTC

This package is auto-updated.

Last update: 2024-08-26 17:56:53 UTC


README

本项目提供了一个针对欧洲增值税信息交换系统的SOAP客户端。

更多详细信息,请访问http://ec.europa.eu/taxation_customs/vies/faq.html

安装

推荐安装goetas-webservices/euro-vies-client的方式是使用Composer,只需运行

composer require goetas-webservices/euro-vies-client

特性

  • 纯PHP,不依赖ext-soap
  • 完整的IDE类型提示支持
  • PSR-7 HTTP消息兼容
  • 多HTTP客户端(guzzle、buzz、curl、react)
  • 生产环境中不进行WSDL/XSD解析
  • 可扩展(支持事件监听器)

使用方法

<?php

use GoetasWebservices\SoapServices\SoapClient\ClientFactory;
use GoetasWebservices\SoapServices\SoapClient\Builder\SoapContainerBuilder;
use GoetasWebservices\Client\EuroVies\SoapContainer;
use GoetasWebservices\Client\EuroVies\SoapStubs\CheckVatPortType;

require __DIR__ . '/vendor/autoload.php';

// project initialization
$container = new SoapContainer();

// use this when cloning this repository and keeping the directory, comment it when including goetas-webservices/euro-vies-client via composer
$serializer = SoapContainerBuilder::createSerializerBuilderFromContainer($container)->build();

// uncomment this when including goetas-webservices/euro-vies-client via composer
// $serializer = SoapContainerBuilder::createSerializerBuilderFromContainer($container, null, __DIR__ . '/vendor/goetas-webservices/euro-vies-client')->build();

$metadata = $container->get('goetas_webservices.soap_client.metadata_reader');
$factory = new ClientFactory($metadata, $serializer);

/**
 * @var $client CheckVatPortType
 */
$client = $factory->getClient('http://ec.europa.eu/taxation_customs/vies/checkVatService.wsdl','checkVatPort', 'checkVatService');


$result = $client->checkVat("DE", "123456789");

var_dump($result);

注意

本项目代码遵循MIT许可证。如需专业支持,请联系goetas@gmail.com或访问https://www.goetas.com