承接 felipteko/mx-curp 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

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

felipteko/mx-curp

最新稳定版本:v0.1.4

Composer 安装命令:

composer require felipteko/mx-curp

包简介

Herramientas para CURP de Mexico

README 文档

README

Conjunto de herramientas en PHP para la validación de la Cláve Única de Registro de Población en México.

Instalación

La instalación se puede realizar mediante composer.

composer require francerz/mx-curp

Utilización

use Francerz\MX_CURP\CURP;
use Francerz\MX_CURP\EntidadesFederativasEnum;
use Francerz\MX_CURP\SexosEnum;

$curp = new CURP('PERJ911109HCMRDN05');

/*
    VALIDAR CURP
    - Verifica estructura de la cadena.
    - Verifica presencia de palabras inconvenientes.
    - Prueba congruencia del dígito verificador.
*/
if (!$curp->esValida()) {
    throw new Exception("La CURP introducida es inválida.");
}

/*
    OBTENER FECHA DE NACIMIENTO
    Obtiene la fecha de nacimiento presente en la CURP en un objeto
    DateTimeImmutable.
*/
$fechaNacimiento = $curp->getFechaNacimiento();
// Salida: 1991-11-09T00:00:00+00:00
echo $fechaNacimiento->format(DateTimeInterface::W3C) . PHP_EOL;

/*
    OBTENER SEXO
    Obtiene el valor representativo del sexo
*/
switch ($curp->getSexo()) {
    case SexosEnum::HOMBRE:
        echo "Es HOMBRE" . PHP_EOL;
        break;
    case SexosEnum::MUJER:
        echo "Es MUJER" . PHP_EOL;
        break;
}

/*
    OBTENER ENTIDAD DE NACIMIENTO
    Obtiene los dígitos característicos de la entidad federativa de nacimiento.
*/
switch ($curp->getEntidadFederativa()) {
    case EntidadesFederativasEnum::AGUASCALIENTES:
        echo "Nació en Aguascalientes." . PHP_EOL;
        break;
    case EntidadesFederativasEnum::COLIMA:
        echo "Nació en Colima." . PHP_EOL;
        break;
    case EntidadesFederativasEnum::ZACATECAS:
        echo "Nació en Zacatecas." . PHP_EOL;
        break;
    case EntidadesFederativasEnum::NACIDO_EXTRANJERO:
        echo "Nació en el Extranjero." . PHP_EOL;
        break;
}

/*
    VERIFICAR CORRESPONDIENCIA DEL NOMBRE
    Realiza pruebas de los caracteres clave del nombre(s) para verificar su
    correspondencia.
*/
if (!$curp->esNombreValido('Juan')) {
    throw new Exception('El nombre no corresponde a la CURP.');
}

/*
    VERIFICAR CORRESPONDIENCIA DEL PRIMER APELLIDO
    Realiza pruebas de los caracteres clave del primer apellido para verificar
    su correspondencia.
*/
if (!$curp->esApellido1Valido('Pérez')) {
    throw new Exception('El primer apellido no corresponde a la CURP.');
}

/*
    VERIFICAR CORRESPONDIENCIA DEL SEGUNDO APELLIDO
    Realiza pruebas de los caracteres clave del segundo apellido para verificar
    su correspondencia.
*/
if (!$curp->esApellido2Valido('Rodríguez')) {
    throw new Exception('El segundo apellido no corresponde a la CURP.');
}

echo "Todo parece estar en orden." . PHP_EOL;

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-03-26