avf/cnpj 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

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:

  1. Faça um fork do projeto
  2. Crie uma branch:
git checkout -b minha-feature
  1. Faça suas alterações
  2. Execute os testes:
composer test
  1. Envie um Pull Request

Repositório

https://github.com/ArthurVFelipe/php-cnpj-validator

统计信息

  • 总下载量: 0
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-07-10

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固