usinatech / br-validator

巴西验证库用于Laravel

安装: 138

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 1

分支: 100

类型:laravel-bundle

v10.0.0 2023-04-20 19:55 UTC

This package is auto-updated.

Last update: 2024-09-20 22:53:30 UTC


README

包含对CPF、CNPJ、带区号的电话、南美贸易联盟车牌等的验证库。

安装

导航到您的项目文件夹,例如

cd /var/www/projeto

执行

composer require usinatech/br-validator

现在,要使用验证,只需执行Laravel的常规步骤。

区别在于可以采用以下验证方法

  • celular - 验证字段是否为格式(99999-99999999-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-99999.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!'
    ];
}