usinatech / br-validator
巴西验证库用于Laravel
Requires
- illuminate/support: ^6.0|^7.0|^8.0|^9.0|^10.0
Requires (Dev)
- orchestra/testbench: ^4.0|^5.0
- phpunit/phpunit: ^8.3|^9.0
README
包含对CPF、CNPJ、带区号的电话、南美贸易联盟车牌等的验证库。
安装
导航到您的项目文件夹,例如
cd /var/www/projeto
执行
composer require usinatech/br-validator
现在,要使用验证,只需执行Laravel
的常规步骤。
区别在于可以采用以下验证方法
-
celular
- 验证字段是否为格式(99999-9999
或9999-9999
) -
celular_com_ddd
- 验证字段是否为格式((99)99999-9999
或(99)9999-9999
或(99) 99999-9999
或(99) 9999-9999
) -
cnpj
- 验证字段是否是有效的CNPJ。 -
cpf
- 验证字段是否是有效的CPF。 -
data
- 验证字段是否为格式为DD/MM/YYYY
* 的日期。例如:31/12/1969
。 -
formato_cnpj
- 验证字段是否有正确的CNPJ掩码(99.999.999/9999-99
)。 -
formato_cpf
- 验证字段是否有正确的CPF掩码(999.999.999-99
)。 -
formato_cep
- 验证字段是否有正确的CEP掩码(99999-999
或99.999-999
)。 -
telefone
- 验证字段是否有电话掩码(9999-9999
)。 -
telefone_com_ddd
- 验证字段是否有带区号的电话掩码((99)9999-9999
或(99) 9999-9999
)。 -
formato_placa_de_veiculo
- 验证字段是否有有效的车辆车牌格式。
测试
因此,可以执行简单的测试
$validator = \Validator::make( ['telefone' => '(77)9999-3333'], ['telefone' => 'required|telefone_com_ddd'] ); dd($validator->fails());
您也可以通过Illuminate\Http\Request
的实例使用它,通过validate
方法。
查看
use Illuminate\Http\Request; // URL: /testando?telefone=3455-1222 Route::get('testando', function (Request $request) { try{ $dados = $request->validate([ 'telefone' => 'required|telefone', // outras validações aqui ]); } catch (\Illuminate\Validation\ValidationException $e) { dd($e->errors()); } });
自定义消息
上述所有验证都包含默认的验证消息,但您可以使用Validator::make
的第三个参数来更改此设置。此参数应该是一个数组,其中索引是验证的名称,值是相应的消息。
例如
Validator::make($valor, $regras, ['celular_com_ddd' => 'O campo :attribute não é um celular'])
或通过您的php artisan make:request
创建的Request实例的messages
方法。
public function messages() { return [ 'campo.telefone' => 'Telefone não válido!' ]; }