这篇文章主要介绍了php实现通用的信用卡验证类,涉及信用卡的规则与php字符串操作的相关技巧,具有一定参考借鉴价值,文中有英文原文注释说明,有助于更直观的了解源
本文实例讲述了php实现通用的信用卡验证类。分享给大家供大家参考。
原文说明如下:
Credit Card Validation Solution (PHP Edition)
Version 3.5
Description
Credit Card Validation Solution™ uses a four step process to ensure credit card numbers are keyed in correctly. This procedure accurately checks cards from American Express, Australian BankCard, Carte Blache, Diners Club, Discover/Novus, JCB, MasterCard and Visa.
For more information, please read the comments in the code itself.
Installation Instructions
Select the text between the two lines indicated, below.
Copy the text.
Open up a text editor.
Paste the text.
Save that file. When saving it, make sure to:
save it in a directory on your webserver, and
name it with an extension that your server will recognize needs parsing by PHP.
To see it in action, open up that file in your web browswer.
具体代码如下:
Gyb2b V1.01免费版可终身使用,是一款功能强大的B2B电子商务应用软件。该软件不仅更新和修改了V1.0相关功能,更是采用了目前互联网上最流行的LAMP组合(Linux+Apache+Mysql+PHP)开发完成,模板技术实现了界面与代码的有效分离,用户可以快速地在此基础上编译模板;提供B2B电子商务应用最常见的求购、供应、商品、公司库、行业资讯、商圈、资信认证、在线交易、交易评分、留言、搜
0
= 3000 and $NumberLeft = 3600 and $NumberLeft = 3800 and $NumberLeft = 3400 and $NumberLeft = 3700 and $NumberLeft = 3528 and $NumberLeft = 3890 and $NumberLeft = 4000 and $NumberLeft 14) {
$ShouldLength = 16;
} elseif ($NumberLength The Visa number entered, $Number, in is 14 digits long.
Visa cards usually have 16 digits, though some have 13.
Please check the number and try again.
n";
return FALSE;
}
} elseif ($NumberLeft >= 5100 and $NumberLeft The first four digits of the number entered are $NumberLeft.
If that's correct, we don't accept that type of credit card.
If it's wrong, please try again.
n";
return FALSE;
}
# 3) Is the number the right length?
if ($NumberLength $ShouldLength) {
$Missing = $NumberLength - $ShouldLength;
if ($Missing The $CardName number entered, $Number, is missing " . abs($Missing) . " digit(s).
Please check the number and try again.
n";
} else {
echo "
The $CardName number entered, $Number, has $Missing too many digit(s).
Please check the number and try again.
n";
}
return FALSE;
}
# 4) Does the number pass the Mod 10 Algorithm Checksum?
if (Mod10Solution($Number) == TRUE) {
return TRUE;
} else {
echo "
The $CardName number entered, $Number, is invalid.
Please check the number and try again.
n";
return FALSE;
}
}
function OnlyNumericSolution ($Number) {
# Remove any non numeric characters.
# Ensure number is no more than 19 characters long.
return substr( ereg_replace( "[^0-9]", "", $Number) , 0, 19);
}
function Mod10Solution ($Number) {
$NumberLength = strlen($Number);
$Checksum = 0;
# Add even digits in even length strings
# or odd digits in odd length strings.
for ($Location = 1 - ($NumberLength % 2); $Location The $CardName number entered, $Number, is valid.
n";
}
} else {
$Number = "";
}
# Setup an input form. Posting it calls this page again.
echo "
希望本文所述对大家的php程序设计有所帮助。
,
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号