Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

Uma biblioteca contendo validações de formatos Brasileiros, para o Laravel

License

NotificationsYou must be signed in to change notification settings

LaravelLegends/pt-br-validator

Repository files navigation

Esta biblioteca adiciona validações brasileira ao Laravel, como CPF, CNPJ, Placa de Carro, CEP, Telefone, Celular e afins.

🇧🇷🇧🇷🇧🇷

Versões

LaravelBiblioteca
4.*4.*
5.*5.1.*
^6.0 || ^7.0 || ^8.0^8.0
^9.0^9.0
^10.0^10.0
^11.0^11.0
^12.0^12.0

Instalação

Navegue até a pasta do seu projeto, por exemplo:

cd /etc/www/projeto

E então execute:

composer require laravellegends/pt-br-validator

Caso esteja utilizando uma versão desta biblioteca anterior a5.2, você deve o provider emconfig/app.php

'providers' => [// ... outros pacotesLaravelLegends\PtBrValidator\ValidatorProvider::class]

Agora, para utilizar a validação, basta fazer o procedimento padrão doLaravel.

A diferença é que será possível usar os seguintes métodos de validação:

REGRADescrição
CelularValida se o campo está no formato (99999-9999 ou9999-9999)
celular_com_dddValida se o campo está no formato ((99)99999-9999 ou(99)9999-9999 ou(99) 99999-9999 ou(99) 9999-9999)
celular_com_codigoValida se o campo está no formato+99(99)99999-9999 ou +99(99)9999-9999.
cnpjValida se o campo é um CNPJ válido. É possível gerar um CNPJ válido para seus testes utilizando o sitegeradorcnpj.com
cpfValida se o campo é um CPF válido. É possível gerar um CPF válido para seus testes utilizando o sitegeradordecpf.org
cnsValida se o campo é um CNS válido. Use o sitegeradornv.com.br para testar
formato_cnpjValida se o campo tem uma máscara de CNPJ correta (99.999.999/9999-99).
formato_cpfValida se o campo tem uma máscara de CPF correta (999.999.999-99).
formato_cepValida se o campo tem uma máscara de correta (99999-999 ou99.999-999).
telefoneValida se o campo tem umas máscara de telefone (9999-9999).
telefone_com_dddValida se o campo tem umas máscara de telefone com DDD ((99)9999-9999).
telefone_com_codigoValida se o campo tem umas máscara de telefone com DDD (+55(99)9999-9999).
formato_placa_de_veiculoValida se o campo tem o formato válido de uma placa de veículo (incluindo o padrão MERCOSUL).
formato_pisValida se o campo tem o formato de PIS.
pisValida se o PIS é válido.
cpf_ou_cnpjValida se o campo é um CPF ou CNPJ
formato_cpf_ou_cnpjValida se o campo contém um formato de CPF ou CNPJ
ufValida se o campo contém uma sigla de Estado válido (UF)

Testando as validações do PtBrValidator

Com isso, é possível fazer um teste simples

$validator = \Validator::make(    ['telefone' =>'(77)9999-3333'],    ['telefone' =>'required|telefone_com_ddd']);dd($validator->fails());

Você pode utilizá-lo também com a instância deIlluminate\Http\Request, através do métodovalidate.

Veja:

useIlluminate\Http\Request;// URL: /testando?telefone=3455-1222Route::get('testando',function (Request$request) {try{$dados =$request->validate(['telefone' =>'required|telefone',// outras validações aqui        ]);    }catch (\Illuminate\Validation\ValidationException$e) {dd($e->errors());    }});

Customizando as mensagens

Todas as validações citadas acima já contam mensagens padrões de validação, porém, é possível alterar isto usando o terceiro parâmetro deValidator::make. Este parâmetro deve ser um array onde os índices sejam os nomes das validações e os valores devem ser as respectivas mensagens.

Por exemplo:

Validator::make($valor,$regras, ['celular_com_ddd' =>'O campo :attribute não é um celular'])

Ou através do métodomessages do seu Request criado pelo comandophp artisan make:request.

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

Acessando as Regras separadamente

Caso tenha necessidade de acessar alguma regra separadamente, você poderá ter acesso as seguintes classes:

\LaravelLegends\PtBrValidator\Rules\Celular::class\LaravelLegends\PtBrValidator\Rules\CelularComDdd::class\LaravelLegends\PtBrValidator\Rules\CelularComCodigo::class\LaravelLegends\PtBrValidator\Rules\Cnh::class\LaravelLegends\PtBrValidator\Rules\Cnpj::class\LaravelLegends\PtBrValidator\Rules\Cpf::class\LaravelLegends\PtBrValidator\Rules\Cns::class\LaravelLegends\PtBrValidator\Rules\FormatoCnpj::class\LaravelLegends\PtBrValidator\Rules\FormatoCpf::class\LaravelLegends\PtBrValidator\Rules\Telefone::class\LaravelLegends\PtBrValidator\Rules\TelefoneComDdd::class\LaravelLegends\PtBrValidator\Rules\TelefoneComCodigo::class\LaravelLegends\PtBrValidator\Rules\FormatoCep::class\LaravelLegends\PtBrValidator\Rules\FormatoPlacaDeVeiculo::class\LaravelLegends\PtBrValidator\Rules\FormatoPis::class\LaravelLegends\PtBrValidator\Rules\Pis::class\LaravelLegends\PtBrValidator\Rules\CpfOuCnpj::class\LaravelLegends\PtBrValidator\Rules\FormatoCpfOuCnpj::class\LaravelLegends\PtBrValidator\Rules\Uf::class

Por exemplo, se você deseja validar o formato do campo de um CPF, você pode utilizar a classeLaravelLegends\PtBrValidator\Rules\FormatoCpf da seguinte forma:

useIlluminate\Http\Request;useLaravelLegends\PtBrValidator\Rules\FormatoCpf;// testando?cpf=valor_invalidoRoute::get('testando',function (Request$request) {try{$dados =$request->validate(['cpf'  => ['required',newFormatoCpf]// outras validações aqui        ]);    }catch (\Illuminate\Validation\ValidationException$e) {dd($e->errors());    }});

Changelog

  • 9.1.0 - Validaçãocns (cartão nacional de saúde) adicionada.
  • 8.0.3 - Validaçãouf adicionada.
  • 8.0.2 - Validaçãocpf_ou_cnpj
  • 5.2.1 - Validaçãocpf_ou_cnpj

Sugestões

Eloquent Filter: Essa biblioteca foi desenvolvida com o propósito de criar facilmente filtros de pesquisa para APIs REST. Com esta biblioteca, você vai economizar várias linhas de códigos, bem como manter um padrão global para filtros de pesquisa em sua aplicação escrita em Laravel.

Doações

Paypal


[8]ページ先頭

©2009-2025 Movatter.jp