phillarmonic/cpf-cnpj

一个用于验证和格式化巴西CPF和CNPJ号码的PHP库。

1.0.0 2024-09-27 10:42 UTC

This package is auto-updated.

Last update: 2024-09-27 10:43:39 UTC


README

一个用于验证和格式化巴西CPF和CNPJ号码的PHP库。

安装

您可以使用Composer安装此库。在项目目录中运行以下命令

composer require phillarmonic/cpf-cnpj

用法

验证CPF号码

要验证一个CPF号码

use Phillarmonic\CpfCnpj\CPF;

$cpf = new CPF('123.456.789-09');
if ($cpf->isValid()) {
    echo "The CPF is valid.";
} else {
    echo "The CPF is not valid.";
}

格式化CPF号码

要格式化有效的CPF号码

use Phillarmonic\CpfCnpj\CPF;

$cpf = new CPF('12345678909');
$formattedCpf = $cpf->format();

if ($formattedCpf !== false) {
    echo "Formatted CPF: " . $formattedCpf; // Outputs: 123.456.789-09
} else {
    echo "Invalid CPF, unable to format.";
}

验证CNPJ号码

要验证一个CNPJ号码

use Phillarmonic\CpfCnpj\CNPJ;

$cnpj = new CNPJ('12.345.678/0001-95');
if ($cnpj->isValid()) {
    echo "The CNPJ is valid.";
} else {
    echo "The CNPJ is not valid.";
}

格式化CNPJ号码

要格式化有效的CNPJ号码

use Phillarmonic\CpfCnpj\CNPJ;

$cnpj = new CNPJ('12345678000195');
$formattedCnpj = $cnpj->format();

if ($formattedCnpj !== false) {
    echo "Formatted CNPJ: " . $formattedCnpj; // Outputs: 12.345.678/0001-95
} else {
    echo "Invalid CNPJ, unable to format.";
}

重要提示

  1. 库会自动从输入中删除任何非数字字符,因此您可以传递已格式化或未格式化的数字。
  2. isValid() 方法检查以下内容:
    • 正确的长度(CPF为11位数字,CNPJ为14位数字)
    • 不在已知无效号码的黑名单中
    • 校验位的有效性
  3. 如果号码无效,format() 方法返回 false

错误处理

库不会抛出异常。相反,在无效输入的情况下,它返回 false 或静默失败。在使用数字之前,始终检查 isValid() 的返回值,并在使用格式化结果之前检查 format() 是否返回 false

贡献

如果您想为此项目做出贡献,请在GitHub仓库中提交拉取请求。

许可

此库是开源软件,根据MIT许可证授权。