nekman / luhn-algorithm
Luhn算法的PHP实现。用于验证信用卡号码和一些国家身份证号码。
5.0.1
2022-03-11 10:27 UTC
Requires
- php: ^7.4||^8.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.15
- php-coveralls/php-coveralls: ^2.1
- phpunit/phpunit: ^9.0
README
这是PHP 7.4及以上版本的Luhn算法零依赖实现。Luhn算法用于验证如信用卡和国家身份证号码等事物。有关算法的更多信息,请参阅维基百科。
安装
使用Composer安装
composer require nekman/luhn-algorithm
使用方法
为了实例化库的新实例,请使用工厂
use Nekman\LuhnAlgorithm\LuhnAlgorithmFactory; $luhn = LuhnAlgorithmFactory::create();
您可以在LuhnAlgorithmInterface.php文件中找到库外观。
Number类是一个容器类,它包含实际数字和校验位。它不执行验证也不计算校验位。它的存在是为了明确将数字与校验位分开,并定义校验位是否存在。为了简化验证数字的过程,您可以像这样使用命名构造函数Number::fromString():
use Nekman\LuhnAlgorithm\Number; // Assume $creditCard is from a form. $number = Number::fromString($creditCard); if ($luhn->isValid($number)) { // Number is valid. }
或者,如果您想计算数字的校验和或校验位
use Nekman\LuhnAlgorithm\Number; $number = new Number(12345); $checksum = $luhn->calcChecksum($number); $checkDigit = $luhn->calcCheckDigit($number);
版本控制
此项目符合语义版本控制。
变更日志
要查看完整更改列表以及如何在主要版本之间迁移,请参阅发布页面。