danielebarbaro / laravel-vat-eu-validator
一个简单的包,用于验证欧盟增值税号与ec.europa.eu数据库中的中央数据库
v2.0.2
2024-09-16 07:14 UTC
Requires
- php: ^8.2
- ext-openssl: *
- ext-soap: *
- illuminate/contracts: ^10.0|^11.0
- illuminate/support: ^10.0|^11.0
Requires (Dev)
- driftingly/rector-laravel: ^1.2
- friendsofphp/php-cs-fixer: ^3.59
- orchestra/testbench: ^8.1|^9.1
- phpstan/extension-installer: ^1.4
- phpstan/phpstan: ^1.4.7
- phpstan/phpstan-deprecation-rules: ^1.2
- phpstan/phpstan-phpunit: ^1.4
- phpunit/phpunit: ^10.5|^11.0
- rector/rector: ^1.1
README
laravel-vat-eu-validator 是一个由 vat.php 启发,用于验证欧洲地区企业的增值税号的包。
对于 Laravel 5,6,7 使用标签 0.5.4
对于 Laravel 7,8,9 使用标签 1.20
安装
您可以通过 composer 安装此包
composer require danielebarbaro/laravel-vat-eu-validator
包将自动注册自身
用法
use Danielebarbaro\LaravelVatEuValidator\Facades\VatValidatorFacade as VatValidator; // Check VAT format and VIES existence VatValidator::validate('IT12345'); // Check VAT format VatValidator::validateFormat('IT12345678901'); // Check VAT existence VatValidator::validateExistence('IT12345678901');
验证
该包注册了两个新的验证规则
vat_number
待验证的字段必须是有效的且存在的增值税号。
vat_number_exist
待验证的字段检查 id 是否是存在的增值税号。
vat_number_format
待验证的字段必须是有效的增值税号。
use Illuminate\Http\Request; class Controller { public function foo(Request $request) { $request->validate([ 'bar_field' => [new \Danielebarbaro\LaravelVatEuValidator\Rules\VatNumber()], ]); $request->validate([ 'bar_field' => [new \Danielebarbaro\LaravelVatEuValidator\Rules\VatNumberExist()], ]); $request->validate([ 'bar_field' => [new \Danielebarbaro\LaravelVatEuValidator\Rules\VatNumberFormat()], ]); } }
或者,您也可以直接使用 Rule
。
use Illuminate\Http\Request; use Danielebarbaro\LaravelVatEuValidator\Rules; class Controller { public function foo(Request $request) { $request->validate([ 'bar_field' => [ new \Danielebarbaro\LaravelVatEuValidator\Rules\VatNumber() ], 'bar_field' => [ new \Danielebarbaro\LaravelVatEuValidator\Rules\VatNumberExist() ], 'bar_field' => [ new \Danielebarbaro\LaravelVatEuValidator\Rules\VatNumberFormat() ], ]); } }
翻译
大多数显示的字符串都定义在 vatEuValidator::validation
翻译文件中。该包包含一些支持的地区,但如果您的地区尚未包含,我们非常欢迎提交 PR。
如果尚未发布,您可以使用 php artisan vendor:publish --tag=laravel-vat-eu-validator-lang
编辑或填写翻译文件,这将把我们的翻译文件复制到您的应用的 vendor/laravelVatEuValidator
"lang" 路径。
测试
composer test
贡献
有关详细信息,请参阅 CONTRIBUTING。
安全
如果您发现任何与安全相关的问题,请通过电子邮件 barbaro.daniele@gmail.com 报告,而不是使用问题跟踪器。
鸣谢
贡献者
许可
MIT 许可证(MIT)。有关更多信息,请参阅 许可文件。
Laravel 包模板
此包是用 Laravel 包模板 生成的。