r4kib / validate-credit-card
PHP和Laravel信用卡验证器
0.1
2021-03-23 08:25 UTC
Requires
- php: >=8.0
- lib-pcre: *
- illuminate/support: ^8.0
Requires (Dev)
- phpunit/phpunit: ~9.3
README
验证流行的借记卡和信用卡号码是否符合正则表达式和Luhn算法。还验证CVC和有效期。附带Laravel的最小验证规则
免责声明
这里所有的代码都来自以下两个仓库-
- https://github.com/rap2hpoutre/laravel-credit-card-validator/
- https://github.com/inacho/php-credit-card-validator/
它们应该满足你的需求。我不得不制作这个包来解决一些非常具体的需求。
安装
通过composer安装
composer require r4kib/validate-credit-card
将服务提供者添加到config/app.php文件中的providers部分
R4kib\ValidateCreditCard\ServiceProvider::class,
PHP使用方法
已知卡类型验证卡号
$card = CreditCard::validCreditCard('5500005555555559', 'mastercard'); print_r($card);
输出
Array
(
[valid] => 1
[number] => 5500005555555559
[type] => mastercard
)
验证卡号并返回类型
$card = CreditCard::validCreditCard('371449635398431'); print_r($card);
输出
Array
(
[valid] => 1
[number] => 371449635398431
[type] => amex
)
验证CVC
$validCvc = CreditCard::validCvc('234', 'visa'); var_dump($validCvc);
输出
bool(true)
验证有效期
$validDate = CreditCard::validDate('2013', '07'); // past date var_dump($validDate);
输出
bool(false)
Laravel使用方法
将其添加到你的验证规则中
// Add this in your controller method $this->validate($request, [ 'credit-card-number' => 'required|ccn', 'credit-card-date' => 'required|ccd', 'credit-validation-code' => 'required|cvc', ]);
测试
执行以下命令以运行单元测试:vendor/bin/phpunit