larautils / credit-card
验证信用卡号、到期日期、cvv
dev-master
2020-07-29 19:07 UTC
Requires
- php: 5.*|7.*
- illuminate/translation: ^5.4
- illuminate/validation: ^5.4
Requires (Dev)
- friendsofphp/php-cs-fixer: ~2.5
- orchestra/testbench: ^3.5
- phpunit/phpunit: 6.2.*
This package is auto-updated.
Last update: 2024-08-29 05:06:50 UTC
README
此规则将验证给定的信用卡 号码、到期日期 或 cvv 是否有效。
安装
composer require laravel-validation-rules/credit-card
使用方法
作为 FormRequest
<?php namespace App\Http\Requests; use LVR\CreditCard\CardCvc; use LVR\CreditCard\CardNumber; use LVR\CreditCard\CardExpirationYear; use LVR\CreditCard\CardExpirationMonth; use Illuminate\Foundation\Http\FormRequest; class CreditCardRequest extends FormRequest { /** * Get the validation rules that apply to the request. * * @return array */ public function rules() { return [ 'card_number' => ['required', new CardNumber], 'expiration_year' => ['required', new CardExpirationYear($this->get('expiration_month'))], 'expiration_month' => ['required', new CardExpirationMonth($this->get('expiration_year'))], 'cvc' => ['required', new CardCvc($this->get('card_number'))] ]; } }
卡号
从请求中获取
$request->validate( ['card_number' => '37873449367100'], ['card_number' => new LVR\CreditCard\CardNumber] );
直接
(new LVR\CreditCard\Cards\Visa) ->setCardNumber('4012888888881881') ->isValidCardNumber()
卡到期日
从请求中获取
// CardExpirationYear requires card expiration month $request->validate( ['expiration_year' => '2017'], ['expiration_year' => ['required', new LVR\CreditCard\CardExpirationYear($request->get('expiration_month'))]] ); // CardExpirationMonth requires card expiration year $request->validate( ['expiration_month' => '11'], ['expiration_month' => ['required', new LVR\CreditCard\CardExpirationMonth($request->get('expiration_year'))]] ); // CardExpirationDate requires date format $request->validate( ['expiration_date' => '02-18'], ['expiration_month' => ['required', new LVR\CreditCard\CardExpirationDate('m-y')]] );
直接
LVR\CreditCard\Cards\ExpirationDateValidator( $expiration_year, $expiration_month )->isValid(); // Or static LVR\CreditCard\Cards\ExpirationDateValidator::validate( $expiration_year, $expiration_month );
卡 cvv
从请求中获取
// CardCvc requires card number to determine allowed cvc length $request->validate( ['cvc' => '123'], ['cvc' => new LVR\CreditCard\CardCvc($request->get('card_number'))] );
直接
LVR\CreditCard\Cards\Card::isValidCvcLength($cvc);
许可
本项目采用 Apache 2.0 许可证,您可以在 此处 找到许可证。
反馈
如果您有任何反馈、评论或建议,请随时在此存储库中提交问题。