Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/geekcom/validator-docs
Validação de CPF, CNPJ, CNH, NIS, DDD, Título Eleitoral e Cartão Nacional de Saúde com Laravel.
https://github.com/geekcom/validator-docs
cnh cnpj cns cpf cpf-cnpj hacktoberfest laravel laravel-package laravel-validation laravel10 nis passaporte tituloeleitor validation validation-library
Last synced: 6 days ago
JSON representation
Validação de CPF, CNPJ, CNH, NIS, DDD, Título Eleitoral e Cartão Nacional de Saúde com Laravel.
- Host: GitHub
- URL: https://github.com/geekcom/validator-docs
- Owner: geekcom
- License: mit
- Created: 2016-07-27T12:49:37.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2024-12-10T00:32:48.000Z (about 1 month ago)
- Last Synced: 2025-01-09T09:00:22.224Z (13 days ago)
- Topics: cnh, cnpj, cns, cpf, cpf-cnpj, hacktoberfest, laravel, laravel-package, laravel-validation, laravel10, nis, passaporte, tituloeleitor, validation, validation-library
- Language: PHP
- Homepage:
- Size: 487 KB
- Stars: 567
- Watchers: 27
- Forks: 96
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# Validator Docs - Brasil
_Biblioteca PHP para validação de documentos do Brasil usando **Laravel**_![Build Status](https://github.com/geekcom/validator-docs/actions/workflows/proposing-changes.yml/badge.svg)
[![Coverage Status](https://coveralls.io/repos/github/geekcom/validator-docs/badge.svg)](https://coveralls.io/github/geekcom/validator-docs)
[![PHPStan](https://img.shields.io/badge/PHPStan-enabled-brightgreen.svg?style=flat)](https://github.com/phpstan/phpstan)
[![Monthly Downloads](http://poser.pugx.org/geekcom/validator-docs/d/monthly)](https://packagist.org/packages/geekcom/validator-docs)
[![Total Downloads](https://poser.pugx.org/geekcom/validator-docs/downloads)](https://packagist.org/packages/geekcom/validator-docs)
[![License](https://poser.pugx.org/geekcom/validator-docs/license)](https://packagist.org/packages/geekcom/validator-docs)> ### Por favor, considere **[fazer uma doação](https://nubank.com.br/pagar/518o5/zVBzxd00Sb)**, apoie nossas atividades
> Para a versão legada compatível com Laravel 5 consulte o branch https://github.com/geekcom/validator-docs/tree/5.x.x
## Recursos
- Validar qualquer documento do Brasil;
- Código testado e confiável;
- Open Source;
- Usado por milhares de sistemas;
- Aprovado pela comunidade Laravel.## Instalação
No arquivo `composer.json`, adicione validator-docs como dependência do seu projeto:```
"require": {
"geekcom/validator-docs" : "^3.9"
},
```Depois execute:
```bash
composer install
```Ou simplesmente execute o comando:
```bash
composer require geekcom/validator-docs
```----------------------------------------------------------------------------------------------------------------------------
## Testes
Para executar os testes, basta fazer o seguinte:* Instale as dependências do projeto;
```bash
composer install
```
* Execute os testes.
```bash
composer test
```----------------------------------------------------------------------------------------------------------------------------
## Como usar a biblioteca
Agora que os métodos de validação validator-docs Brasil estão disponíveis, será possível usar da seguinte forma:* **cpf** - Verifica se um CPF é valido;
```php
$this->validate($request, [
'cpf' => 'required|cpf',
]);
```* **cnpj** - Verifica se um CNPJ é valido;
```php
$this->validate($request, [
'cnpj' => 'required|cnpj',
]);
```* **cnh** - Verifica se uma CNH (Carteira Nacional de Habilitação) é válida;
```php
$this->validate($request, [
'cnh' => 'required|cnh',
]);
```* **passaporte** - Verifica se uma Passaporte Brasileiro é válido;
```php
$this->validate($request, [
'passaporte' => 'required|passaporte',
]);
```* **titulo_eleitor** - Verifica se um Título Eleitoral é válido;
```php
$this->validate($request, [
'titulo_eleitor' => 'required|titulo_eleitor',
]);
```* **cpf_cnpj** - Verifica se um CPF ou CNPJ é válido;
```php
$this->validate($request, [
'cpf_cnpj' => 'required|cpf_cnpj',
]);
```* **inscricao_estadual** - Verifica se uma Inscrição Estadual é valida para uma Unidade Federativa(UF)/Estado;
```php
$this->validate($request, [
'inscricao_estadual' => 'required|inscricao_estadual:UF',
]);
```* **nis** - Verifica se um PIS/PASEP/NIT/NIS é válido;
```php
$this->validate($request, [
'nis' => 'required|nis',
]);
```* **cns** - Verifica se um Cartão Nacional de Saúde (CNS) é válido;
```php
$this->validate($request, [
'cns' => 'required|cns',
]);
```* **certidao** - Verifica se uma certidão de nascimento/casamento/óbito é válida;
```php
$this->validate($request, [
'certidao' => 'required|certidao',
]);
```* **renavam** - Verifica se um Registro Nacional de Veículos Automotores (RENAVAM) é válido;
```php
$this->validate($request, [
'renavam' => 'required|renavam',
]);
```* **placa** - Verifica se a PLACA de um veículo é válida;
```php
$this->validate($request, [
'placa' => 'required|placa',
]);
```* **ddd** - Verifica se um número de [DDD](https://pt.wikipedia.org/wiki/Discagem_direta_%C3%A0_dist%C3%A2ncia) é válido;
```php
$this->validate($request, [
'ddd' => 'required|ddd',
]);
```* **formato_cnpj** - Verifica se o formato`(99.999.999/9999-99)` de um CNPJ é válido;
```php
$this->validate($request, [
'formato_cnpj' => 'required|formato_cnpj',
]);
```* **formato_cpf** - Verifica se o formato(`999.999.999-99`) de um CPF é válido;
```php
$this->validate($request, [
'formato_cpf' => 'required|formato_cpf',
]);
```* **formato_cpf_cnpj** - Verifica se o formato de um CPF ou de um CNPJ é válido;
```php
$this->validate($request, [
'formato_cpf_cnpj' => 'required|formato_cpf_cnpj',
]);
```* **formato_nis** - Verifica se o formato(`999.99999-99.9`) de um PIS/PASEP/NIT/NIS é válido;
```php
$this->validate($request, [
'formato_nis' => 'required|formato_nis',
]);
```* **formato_certidao** - Verifica se o formato(`99999.99.99.9999.9.99999.999.9999999-99` ou `99999 99 99 9999 9 99999 999 9999999 99`), de uma certidão é válida.
```php
$this->validate($request, [
'formato_certidao' => 'required|formato_certidao',
]);
```
----------------------------------------------------------------------------------------------------------------------------## Combinando validação e formato
No exemplo abaixo, fazemos um teste onde verificamos a formatação e a validade de um CPF ou CNPJ, para os casos onde a informação deve ser salva em um mesmo atributo:```php
$this->validate($request, [
'cpf_or_cnpj' => 'formato_cpf_cnpj|cpf_cnpj',
]);
```----------------------------------------------------------------------------------------------------------------------------
## Exemplo de uso em um controller
Método de validação de exemplo em um controller com todas as possibilidades de validação```php
public function store(Request $request)
{
$data = $request->all();$this->validate($request, [
'cpf' => 'required|cpf',
'cnpj' => 'required|cnpj',
'cnh' => 'required|cnh',
'titulo_eleitor' => 'required|titulo_eleitor',
'nis' => 'required|nis',
'cns' => 'required|cns',
'ddd' => 'required|ddd',
'renavam' => 'required|renavam',
'placa' => 'required|placa',
'certidao' => 'required|certidao',
'inscricao_estadual' => 'required|inscricao_estadual:SP',
'passaporte' => 'required|passaporte',
]);dd($data);
}
```
**Observe que para validar uma inscrição estadual é necessário informar a [UF](https://pt.wikipedia.org/wiki/Unidades_federativas_do_Brasil)**----------------------------------------------------------------------------------------------------------------------------
## Geradores de documentos para testes
* **CNH** - http://4devs.com.br/gerador_de_cnh
* **TÍTULO ELEITORAL** - http://4devs.com.br/gerador_de_titulo_de_eleitor
* **CNPJ** - https://geradornv.com.br/gerador-cnpj/
* **CPF** - https://geradornv.com.br/gerador-cpf/
* **NIS** - https://www.4devs.com.br/gerador_de_pis_pasep
* **CNS** - https://geradornv.com.br/gerador-cns/
* **CERTIDÕES** - https://www.4devs.com.br/gerador_numero_certidoes
* **INSCRIÇÃO ESTADUAL** - https://www.4devs.com.br/gerador_de_inscricao_estadual
* **RENAVAM** - https://www.4devs.com.br/gerador_de_renavam
* **PLACA** - https://www.4devs.com.br/gerador_de_placa_automoveis
* **Passaporte Brasileiro** - https://geradornv.com.br/gerador-passaporte/Fique a vontade para contribuir de qualquer forma.
Caso tenha alguma dúvida ou encontre algum bug, abra uma [issue](https://github.com/geekcom/validator-docs/issues) ou pesquise por issues antigas.
## [Contribuidores](https://github.com/geekcom/validator-docs/graphs/contributors)
Contribuições de qualquer tipo são bem-vindas!