search
Homephp教程php手册php实现用于验证所有类型的信用卡类

php实现用于验证所有类型的信用卡类

Jun 13, 2016 am 09:09 AM
phpcredit cardaccomplisharticleofkindtypeverify

php实现用于验证所有类型的信用卡类

 这篇文章主要介绍了php实现用于验证所有类型的信用卡类,实例分析了信用卡类的实现原理与相关使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下

 

 

本文实例讲述了php实现用于验证所有类型的信用卡类。分享给大家供大家参考。具体如下:

这个php类比较完整,可以用于验证各种不同的信用卡,针对信用卡的卡号的通用规则进行了验证,同时对不同类型的信用卡进行了针对性的识别。
代码接受一个信用卡号码和有效日期,如果两者都有效,则返回TRUE,否则返回FALSE。

本插件接受以下参数:
$number 表示信用卡号码的一个字符串
$expiry 信用卡有效日期,采用07/12或0712这样的格式

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

// Plug-in 32: Validate Credit Card

// This is an executable example with additional code supplied

// To obtain just the plug-ins please click on the Download link

$card = "4567 1234 5678 9101";

$exp = "06/11";

echo "Validating: $card : $exp
";

$result = PIPHP_ValidateCC($card, $exp);

if ($result != FALSE) echo "Card Validated";

else echo "Card did not validate";

function PIPHP_ValidateCC($number, $expiry)

{

// Plug-in 32: Validate Credit Card

//

// This plug-in accepts a credit card number and

// an expiry date and returns TRUE or FALSE,

// depending on whether the details pass date

// and checksum validation. The arguments required

// are:

//

// $number: Credit Card Number

// $expiry: Expiry date in the form:

// 07/12 or 0712 (for July, 2012)

$number = preg_replace('/[^\d]/', '', $number);

$expiry = preg_replace('/[^\d]/', '', $expiry);

$left = substr($number, 0, 4);

$cclen = strlen($number);

$chksum = 0;

// Diners Club

if (($left >= 3000) && ($left

($left >= 3600) && ($left

($left >= 3800) && ($left

if ($cclen != 14) return FALSE;

// JCB

if (($left >= 3088) && ($left

($left >= 3096) && ($left

($left >= 3112) && ($left

($left >= 3158) && ($left

($left >= 3337) && ($left

($left >= 3528) && ($left

if ($cclen != 16) return FALSE;

// American Express

elseif (($left >= 3400) && ($left

($left >= 3700) && ($left

if ($cclen != 15) return FALSE;

// Carte Blanche

elseif (($left >= 3890) && ($left

if ($cclen != 14) return FALSE;

// Visa

elseif (($left >= 4000) && ($left

if ($cclen != 13 && $cclen != 16) return FALSE;

// MasterCard

elseif (($left >= 5100) && ($left

if ($cclen != 16) return FALSE;

// Australian BankCard

elseif ($left == 5610)

if ($cclen != 16) return FALSE;

// Discover

elseif ($left == 6011)

if ($cclen != 16) return FALSE;

// Unknown

else return FALSE;

for ($j = 1 - ($cclen % 2); $j

$chksum += substr($number, $j, 1);

for ($j = $cclen % 2; $j

{

$d = substr($number, $j, 1) * 2;

$chksum += $d

}

if ($chksum % 10 != 0) return FALSE;

if (mktime(0, 0, 0, substr($expiry, 0, 2), date("t"),

substr($expiry, 2, 2))

return TRUE;

}

?>

希望本文所述对大家的php程序设计有所帮助。

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment

mPDF

mPDF

mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools