avf/cnpj
Composer 安装命令:
composer require avf/cnpj
包简介
Validador de CNPJ numérico e alfanumérico para PHP
README 文档
README
Biblioteca PHP para validação, formatação e cálculo de dígitos verificadores de CNPJ.
Suporta:
- ✅ CNPJ numérico tradicional
- ✅ CNPJ alfanumérico
- ✅ Remoção de máscara
- ✅ Formatação de CNPJ
- ✅ Cálculo dos dígitos verificadores (DV)
- ✅ Compatível com PHP 8.2+
Instalação
Instale via Composer:
composer require avf/cnpj
Requisitos
- PHP >= 8.2
- Composer
Uso básico
Após instalar, carregue o autoload do Composer:
require __DIR__ . '/vendor/autoload.php';
Importe a classe principal:
use Avf\Cnpj\Cnpj;
Validação de CNPJ
CNPJ válido
$result = Cnpj::isValid( '93.015.006/0001-13' ); var_dump($result);
Resultado:
bool(true)
CNPJ inválido
$result = Cnpj::isValid( '93.015.006/0001-14' ); var_dump($result);
Resultado:
bool(false)
CNPJ Alfanumérico
A biblioteca suporta CNPJ contendo caracteres alfanuméricos na composição da base.
Exemplo:
$result = Cnpj::isValid( '112223AA000151' ); var_dump($result);
Resultado:
bool(true)
Formatação do CNPJ
Transforma um CNPJ sem máscara no formato tradicional:
echo Cnpj::format( '93015006000113' );
Resultado:
93.015.006/0001-13
Remover máscara
Remove pontos, barras e hífen:
echo Cnpj::removeMask( '93.015.006/0001-13' );
Resultado:
93015006000113
Cálculo dos dígitos verificadores
É possível calcular os dois últimos dígitos de um CNPJ.
Exemplo:
echo Cnpj::calculateDv( '930150060001' );
Resultado:
13
Com o resultado, o CNPJ completo fica:
93015006000113
Estrutura da biblioteca
src/
└── Cnpj/
├── Cnpj.php
├── Validator.php
├── Calculator.php
├── Converter.php
└── Formatter.php
Responsabilidades:
Cnpj
Facade pública da biblioteca.
Exemplo:
Cnpj::isValid(); Cnpj::format(); Cnpj::calculateDv();
Validator
Responsável por validar o CNPJ informado.
Calculator
Responsável pelo algoritmo de cálculo dos dígitos verificadores.
Converter
Responsável pela conversão de caracteres alfanuméricos:
Exemplo:
A = 10
B = 11
Z = 35
Formatter
Responsável pela normalização e formatação:
Exemplo:
93.015.006/0001-13
↓
93015006000113
Testes
A biblioteca utiliza PHPUnit.
Instalar dependências:
composer install
Executar todos os testes:
composer test
ou:
vendor/bin/phpunit
Cobertura de testes
Os testes cobrem:
- Conversão de caracteres
- Formatação
- Remoção de máscara
- Cálculo dos dígitos verificadores
- Validação de CNPJ numérico
- Validação de CNPJ alfanumérico
- Casos inválidos
Exemplo de saída:
PHPUnit 11.x
................ 16 / 16
OK (16 tests, 19 assertions)
Exemplo completo
<?php require __DIR__ . '/vendor/autoload.php'; use Avf\Cnpj\Cnpj; $cnpj = '93.015.006/0001-13'; if (Cnpj::isValid($cnpj)) { echo "CNPJ válido"; echo Cnpj::format( Cnpj::removeMask($cnpj) ); } else { echo "CNPJ inválido"; }
Licença
Este projeto está licenciado sob a licença MIT.
Consulte o arquivo LICENSE para mais detalhes.
Autor
Arthur Felipe
GitHub:
https://github.com/ArthurVFelipe
Contribuição
Contribuições são bem-vindas.
Para contribuir:
- Faça um fork do projeto
- Crie uma branch:
git checkout -b minha-feature
- Faça suas alterações
- Execute os testes:
composer test
- Envie um Pull Request
Repositório
统计信息
- 总下载量: 0
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2026-07-10