lucassouzaa/pt-br-validator

一个包含巴西格式验证的库,适用于 Laravel 5

6.0.0 2019-10-02 17:07 UTC

This package is auto-updated.

Last update: 2024-09-29 05:29:08 UTC


README

这是一个包含一些巴西验证的库。

Build Status

安装

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

cd /etc/www/projeto

然后执行

composer require laravellegends/pt-br-validator:6.*

现在,要使用验证,只需执行 Laravel 的标准程序。

区别在于,您可以使用以下验证方法

  • celular - 验证字段是否为 99999-99999999-9999 格式

  • celular_com_ddd - 验证字段是否为 (99)99999-9999(99)9999-9999(99) 99999-9999(99) 9999-9999 格式

  • cnpj - 验证字段是否为有效的 CNPJ。您可以使用网站 geradorcnpj.com 生成用于测试的有效 CNPJ

  • cpf - 验证字段是否为有效的 CPF。您可以使用网站 geradordecpf.org 生成用于测试的有效 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 - 验证字段是否具有正确的马赛克 99999-99999.999-999

  • telefone - 验证字段是否具有电话马赛克 9999-9999

  • telefone_com_ddd - 验证字段是否具有带 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'])

或通过您创建的请求实例的 messages 方法,通过 php artisan make:request 命令。

public function messages() {

    return [
        'campo.telefone' => 'Telefone não válido!'
    ];
}