rplansky / credit-card

用于在PHP中生成和验证信用卡号的简单包

dev-master 2015-04-12 21:01 UTC

This package is not auto-updated.

Last update: 2024-09-20 05:00:59 UTC


README

这是一个用于创建和验证信用卡号的简单包。

通过Composer安装

在你的项目中

要在你的项目中使用此包,请将其添加到你的composer.json文件中

"require": {
    "rplansky/credit-card": "dev-master"
}

全局安装

此安装方式对于在命令行上全局使用ccgeneratorccvalidator命令非常有用

$ composer global require "rplansky/credit-card=*@dev"

用法

在代码中

验证数字

此验证器使用Luhn算法

$validator = new Plansky\CreditCard\Validator();
$validator->isValid('57234651187928922');
// true

生成随机数字

完全随机
$generator = new Plansky\CreditCard\Generator();
$generator->single();
// 99119662018492824
前缀

你可以使用品牌前缀来生成随机数字。

$generator = new Plansky\CreditCard\Generator();
$generator->single(301); // Generates a DINERS number
// 30192056094873699
长度

某些品牌有不同的数字长度。

$generator = new Plansky\CreditCard\Generator();
$generator->single(347, 15); // Generates an AMEX number
// 3479966030620031

生成大量数字

使用与generate方法相同的参数,除了第一个参数是你想生成的数字的数量,你可以一次性生成大量数字

$generator = new Plansky\CreditCard\Generator();
$generator->lot(10, 347, 15); // Generates 10 AMEX numbers
// array(
//   0 => '3479132843454361',
//   1 => '3479587605801416',
//   2 => '3479861510504500',
//   3 => '3479130090772634',
//   4 => '3479427298826638',
//   5 => '3479894458677616',
//   6 => '3479713475691154',
//   7 => '3479468840371814',
//   8 => '3479219690811825',
//   9 => '3479326005723791'
// )

在命令行中

ccgenerator

你可以使用与Generator::lot()方法相同的参数,此外,还可以使用separator参数来渲染输出

$ ccgenerator --amount=3 --prefix=347 --length=15 --separator=" "
# 347544073859505 347615533406853 347845409364916

ccvalidator

你可以传递由空格分隔的数字来验证多个数字。

$ ccvalidator 347544073859505 347615533406852 347845409364916
# 347544073859505 | valid
# 347615533406852 | invalid
# 347845409364916 | valid