jp-system / validator-docs
此包为巴西文档提供验证
v2.1
2024-06-20 18:01 UTC
Requires
- php: ^8.2
- laravel/framework: ^11.0
Requires (Dev)
- laravel/pint: ^1.14
- orchestra/testbench: ^9.0
- pestphp/pest: ^2.34
- pestphp/pest-plugin-laravel: ^2.3
- phpunit/phpunit: ^10.5
README
本包受其他两个包的启发,但鉴于需要更好地自定义验证信息和格式验证,因此被创建。
🔧 安装
要安装此包,请运行以下命令
composer require jp-system/validator-docs
📦 自定义
在此包中,您可以使用以下命令发布验证信息和自定义它们
php artisan vendor:publish --tag="docs"
如果您不想发布翻译文件,您可以在 validation.php
文件中创建自己的消息
'docs' => [ 'cpf' => 'Este campo deve ser um CPF válido.', ... ],
📋 使用
所有规则都可以从Laravel自带的 Rule
中使用
'cpf' => [ 'required', 'string', Rule::cpf(), ], 'cnpj' => [ 'required', 'string', Rule::cnpj()->format(), ],
对于有格式化选项但不是必须的规则,我们可以以三种方式应用格式化
'cpf' => [ 'required', 'string', 'cpf:format', ], 'cnpj' => [ 'required', 'string', Rule::cnpj()->format(), ], 'cpf_or_cnpj' => [ 'required', 'string', (new CPForCNPJ)->format(), ],
货币验证规则接受货币和位置两个参数。我们使用Laravel自带的Number类
'money_1' => [ 'required', 'string', 'money:BRL,pt_BR', // default ], 'money_2' => [ 'required', 'string', Rule::money()->parameters(['USD', 'en_US']), ],
如果您需要根据特定规则验证货币格式,您可以在AppServiceProvider中设置回调函数
Money::setLocaleCallback(function ($default) { return Auth::user()?->locale ?? $default; }); Money::setCurrencyCallback(function ($default) { return Auth::user()?->currency ?? $default; });
任何改进或修正,都可以通过PR或Issue提出。