ilexn/hkid-check-digit
Composer 安装命令:
composer require ilexn/hkid-check-digit
包简介
HKID digit check
关键字:
README 文档
README
Used to validation the format and check digit calculation for HKID.
__ __ __ ___ __ _______ ______ __ __ _______ ______ __ ___
| | | | | |/ / | | | \ / || | | | | ____| / || |/ /
| |__| | | ' / | | | .--. | | ,----'| |__| | | |__ | ,----'| ' /
| __ | | < | | | | | | | | | __ | | __| | | | <
| | | | | . \ | | | '--' | | `----.| | | | | |____ | `----.| . \
|__| |__| |__|\__\ |__| |_______/ \______||__| |__| |_______| \______||__|\__\
| Tag | PHP |
|---|---|
| 1.x | |
| 2.x | php>=7.1 |
| 3.x | php>=7.4 |
| 4.x | php>=8.0 |
| 5.x | php>=8.1 |
| 6.x | php>=8.4 |
Installation
composer require ilexn/hkid-check-digit
Upgrade from 5.x to 6.x
The \Ilex\Validation\HkidValidation\Enum\Reason::PattenError changed to \Ilex\Validation\HkidValidation\Enum\Reason::PatternError
This has the incorrect spelling in the previous version.
Upgrade from 4.x to 5.x
The \Ilex\Validation\HkidValidation\Reason\ReasonInterface changed to Enum \Ilex\Validation\HkidValidation\Enum\Reason
//4.x switch ($hkid->getReason()){ case \Ilex\Validation\HkidValidation\Reason\ReasonInterface::OK: echo('correct'); echo($hkid->format()); break; case \Ilex\Validation\HkidValidation\Reason\ReasonInterface::PATTEN_ERROR: echo('Pattern not match'); break; case \Ilex\Validation\HkidValidation\Reason\ReasonInterface::DIGIT_ERROR: echo('Digit not match'); break; } //5.x switch ($hkid->getReason()){ case \Ilex\Validation\HkidValidation\Enum\Reason::Ok: echo('correct'); echo($hkid->format()); break; case \Ilex\Validation\HkidValidation\Enum\Reason::PattenError: echo('Pattern not match'); break; case \Ilex\Validation\HkidValidation\Enum\Reason::DigitError: echo('Digit not match'); break; }
Upgrade from 2.x to 3.x
All the checking now return \Ilex\Validation\HkidValidation\HkId object, not bool
<?php use Ilex\Validation\HkidValidation\Helper; require_once 'vendor/autoload.php'; $a = Helper::checkByString($s); //2.x: $a is bool //>=3.x $a->isValid(); //bool $a->PatternError(); //bool $a->isDigitError(); //bool echo($a->format()); // print the formated HKID. echo($a->getReason()); //also can get back each parts echo($a->getPart1()); echo($a->getPart2()); echo($a->getPart3());
Usage example
Quick helper - check by each part
<?php use Ilex\Validation\HkidValidation\Helper; require_once 'vendor/autoload.php'; //CA182361(1) $p1 = 'CA'; $p2 = '182361'; $p3 = '1'; $a = Helper::checkByParts($p1, $p2, $p3); if ($a->isValid()) { echo ('correct'); echo $a->format(); //CA182361(1) echo (string) $a; //CA182361(1) } else { echo ('wrong'); }
Quick helper - check by string
<?php use Ilex\Validation\HkidValidation\Enum\Reason;use Ilex\Validation\HkidValidation\Helper; require_once 'vendor/autoload.php'; $s = 'CA182361(1)'; $hkid = Helper::checkByString($s); switch ($hkid->getReason()){ case \Ilex\Validation\HkidValidation\Enum\Reason::Ok: echo('correct'); echo($hkid->format()); break; case \Ilex\Validation\HkidValidation\Enum\Reason::PatternError: echo('Pattern not match'); break; case \Ilex\Validation\HkidValidation\Enum\Reason::DigitError: echo('Digit not match'); break;
Normal
<?php use Ilex\Validation\HkidValidation\HkidDigitCheck; require_once 'vendor/autoload.php'; $p1 = 'CA'; $p2 = '182361'; $p3 = '1'; $s = 'CA182361(1)'; $c = new HkidDigitCheck(); $hkid = $c->checkParts($p1,$p2,$p3); if ($hkid->isValid()) { echo ('correct'); echo $hkid->format(); } else { echo ('wrong'); if ($hkid->PatternError()) { echo('Pattern not match'); } if ($hkid->isDigitError()) { echo('Digit not match'); } } $hkid = $c->checkString($s); if ($hkid->isValid()) { echo ('correct'); echo $hkid->format(); } else { echo ('wrong'); }
ilexn/hkid-check-digit 适用场景与选型建议
ilexn/hkid-check-digit 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 1.99k 次下载、GitHub Stars 达 2, 最近一次更新时间为 2015 年 12 月 04 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「HKID」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 ilexn/hkid-check-digit 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 ilexn/hkid-check-digit 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 ilexn/hkid-check-digit 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
统计信息
- 总下载量: 1.99k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 2
- 点击次数: 17
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2015-12-04