Download the PHP package pauloalmeidasilva/cpfcnpj-validation without Composer
On this page you can find all versions of the php package pauloalmeidasilva/cpfcnpj-validation. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download pauloalmeidasilva/cpfcnpj-validation
More information about pauloalmeidasilva/cpfcnpj-validation
Files in pauloalmeidasilva/cpfcnpj-validation
Package cpfcnpj-validation
Short Description Biblioteca para validação e geração de CPF e CNPJ (pt-BR).
License MIT
Informations about the package cpfcnpj-validation
cpfcnpj-validation
Biblioteca leve para validação, formatação e geração de CPF e CNPJ (pt-BR).
Recursos principais
- Validação de CPF e CNPJ via
Src\\Validator::validate(string): bool(aceita entradas com ou sem pontuação). - Geração de CPF e CNPJ via
Src\\Cpf::generate()eSrc\\Cnpj::generate(). - Formatação e sanitização via
Src\\Formatter. - Exemplos em
example/e testes comphpunitemtests/.
Requisitos
- PHP 8.0 ou superior
- Composer
Instalação (usando Composer)
Ou, se estiver trabalhando com o repositório localmente:
Uso rápido
-
Validar CPF/CNPJ (aceita pontuação ou não):
-
Gerar e validar (ex.: CPF):
- Formatar / sanitizar com
Formatter:
Referência da API
As classes públicas principais estão no namespace Src.
-
Src\Validatorpublic static function validate(string $value): bool— valida CPF ou CNPJ, aceita entrada com pontuação ou não.
-
Src\Cpfpublic static function validate(string $cpf): bool— atalho paraValidator::validatepara CPFs.public static function generate(bool $formatting = true): string— gera um CPF válido; retorna formatado por padrão (xxx.xxx.xxx-xx) quando$formattingfortrue.- Observação: métodos internos para geração de dígitos verificadores e formatação também existem (
formate,DVGenerate), mas são privados/public estáticos conforme o uso.
-
Src\Cnpjpublic static function validate(string $cnpj): bool— atalho paraValidator::validatepara CNPJs.public static function generate(bool $formatting = true): string— gera um CNPJ válido; retorna formatado por padrão (xx.xxx.xxx/xxxx-xx) quando$formattingfortrue.
Src\Formatterpublic static function sanitize(string $value): string— remove todos os caracteres não numéricos.public static function formatCpf(string $cpf): string— formata CPF quando possível (11 dígitos), caso contrário retorna a entrada original.public static function formatCnpj(string $cnpj): string— formata CNPJ quando possível (14 dígitos), caso contrário retorna a entrada original.public static function autoFormat(string $value): string— escolhe CPF/CNPJ automaticamente com base no tamanho.public static function unformat(string $value): string— alias parasanitize.
Exemplos práticos
-
Exemplo CLI para CPF (em
example/example_cpf_cli.php): - Exemplo HTML (simples) em
example/example_cpf_html.phpeexample/example_cnpj_html.php.
Executando testes
Os testes usam phpunit (já incluído como dependência no vendor/ para este repositório).
No Windows (se o binário estiver disponível em vendor/bin):
Boas práticas
- Sempre sanitize entradas (use
Formatter::sanitize) quando armazenar ou comparar CPFs/CNPJs. - Para exibir ao usuário, utilize
Formatter::formatCpf/Formatter::formatCnpj. - Ao gerar dados para testes, use
Cpf::generate(false)/Cnpj::generate(false)para obter a forma sem pontuação.
Contribuindo
Pull requests são bem-vindos. Antes de enviar:
- Rode os testes com
phpunit. - Siga as convenções de codificação do projeto.
Licença
Consulte o arquivo de licença no repositório.