php判断信用卡,php校验信用卡卡号代码
[php]代码库// This function will take a credit card number and check to make sure it
// contains the right amount of digits and uses the Luhn Algorithm to
// weed out made up numbers
function validateCreditcard_number($credit_card_number)
{
// Get the first digit
$firstnumber = substr($credit_card_number, 0, 1);
// Make sure it is the correct amount of digits. Account for dashes being present.
switch ($firstnumber)
{
case 3:
if (!preg_match('/^3\d{3}[ \-]?\d{6}[ \-]?\d{5}$/', $credit_card_number))
{
return 'This is not a valid American Express card number';
}
break;
case 4:
if (!preg_match('/^4\d{3}[ \-]?\d{4}[ \-]?\d{4}[ \-]?\d{4}$/', $credit_card_number))
{
return 'This is not a valid Visa card number';
}
break;
case 5:
if (!preg_match('/^5\d{3}[ \-]?\d{4}[ \-]?\d{4}[ \-]?\d{4}$/', $credit_card_number))
{
return 'This is not a valid MasterCard card number';
}
break;
case 6:
if (!preg_match('/^6011[ \-]?\d{4}[ \-]?\d{4}[ \-]?\d{4}$/', $credit_card_number))
{
return 'This is not a valid Discover card number';
}
break;
default:
return 'This is not a valid credit card number';
}
// Here's where we use the Luhn Algorithm
$credit_card_number = str_replace('-', '', $credit_card_number);
$map = array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
0, 2, 4, 6, 8, 1, 3, 5, 7, 9);
$sum = 0;
$last = strlen($credit_card_number) - 1;
for ($i = 0; $i <= $last; $i++)
{
$sum += $map[$credit_card_number[$last - $i] + ($i & 1) * 10];
}
if ($sum % 10 != 0)
{
return 'This is not a valid credit card number';
}
// If we made it this far the credit card number is in a valid format
return 'This is a valid credit card number';
}
echo validateCreditcard_number('4111-1111-1111-1111'); // This is a valid credit card number
echo validateCreditcard_number('4111-1111-1111-1112'); // This is not a valid credit card number
echo validateCreditcard_number('5558-545f-1234'); // This is not a valid MasterCard card number
echo validateCreditcard_number('9876-5432-1012-3456'); // This is not a valid credit card number
php判断信用卡,php校验信用卡卡号代码相关推荐
- php 卡号算法,PHP实现通过Luhn算法校验信用卡卡号是否有效_PHP
本文实例讲述了PHP实现通过Luhn算法校验信用卡卡号是否有效的方法.分享给大家供大家参考.具体实现方法如下: $numbers = "49927398716 49927398717 123 ...
- .NET Core 如何生成信用卡卡号
点击上方蓝字关注"汪宇杰博客" 导语 上个月我写了<.NET Core 如何验证信用卡卡号>,不少朋友表示挺有兴趣.在金融科技行业的实际工作中,通常还需要生成信用卡卡号 ...
- php验证卡号,PHP验证信用卡卡号是否正确函数
这篇文章主要介绍了PHP验证信用卡卡号是否正确函数,本文直接给出实现代码,需要的朋友可以参考下 可以使用以下PHP函数,,验证一个卡号是否是信用卡: function validateCard ( $ ...
- 【项目实战二】基于模板匹配和形态学操作的信用卡卡号识别(OpenCV+Python)
前言:信用卡卡号识别技术的发展有利于提高银行系统的业务水平和办事效率.相信此次通过学习使用OpenCV中的图像处理方法来实现信用卡卡号识别的项目,能让大家清楚地了解图像处理技术的一般方法与步骤以及如何 ...
- 招商银行信用卡卡号识别项目(第一篇),Python OpenCV 图像处理取经之旅第 53 篇
Python OpenCV 365 天学习计划,与橡皮擦一起进入图像领域吧.本篇博客是这个系列的第 53 篇. 该系列文章导航参考:https://blog.csdn.net/hihell/categ ...
- php信用卡卡号验证函数
介绍一个php信用卡卡号验证函数,可以验证一个卡号是否是信用卡. function validateCard ($cardnumber) {$cardnumber = preg_replace (&q ...
- 验证6种信用卡卡号的代码
验证6种信用卡卡号的代码 作者:BEUS 日期:2006-08-25 字体大小: 小 中 大 可以验证的信用卡种类有: V - Visa M - MasterCard A - Am ...
- “此网站使用的安全性配置已过时,这可能会导致您的信息(例如密码、消息或信用卡卡号)”
浏览器报错内容和截图: 您的连接存在安全隐患: 此网站使用的安全性配置已过时,这可能会导致您的信息(例如密码.消息或信用卡卡号) . 解决办法: 是将网站的TLS升级为安全的1.2
- 此网站使用的安全性配置已过时,这可能会导致您的信息(例如密码、消息或信用卡卡号)谷歌打不开https网站
浏览器报错内容和截图: 您的连接存在安全隐患: 此网站使用的安全性配置已过时,这可能会导致您的信息(例如密码.消息或信用卡卡号) . 在这里插入图片描述 解决办法: 是将网站的TLS升级为安全的1.2 ...
- 前端JS校验银行卡卡号和身份证号码(附ES6版方法)
1.银行卡卡号校验方法. function luhnCheck(bankno) { var lastNum = bankno.substr(bankno.length - 1, 1); //取出最后一 ...
最新文章
- 争自动驾驶领头羊还是确保技术安全?欧美选择不同
- [洛谷P4171][JSOI2010]满汉全席
- 【剑指offer-Java版】05从尾到头打印链表
- 【编译原理】求一个句型短语、直接短语、句柄(一看就懂~!骗小狗)
- 将0~N打乱顺序,然后排序
- C标准库assert.h实现
- 在jsp页面里动态生成EL表达式的key
- 每个程序员都应该知道的一些访问时延值
- Rust 创始人谈 Rust 2019 和未来:社区应限制成长速度
- vue路由1:基本使用
- Machine Learning--决策树(一)
- ubuntu安装中文字体,python plt 绘图显示中文
- python 安装setuptools时报Compression requires the (missing) zlib module错误的解决方案
- TableView载入WebView的一些小技巧 By 徐
- python判断是否有弹出窗口_使用Python爬取弹出窗口信息的实例
- 【Tensorflow2.0】8、tensorflow2.0_hdf5_savedmodel_pb模型转换[2]
- python画一棵树的心理测试_心理测验:空白纸上画棵树,破除心防从这里开始
- 笔记本电脑发射无线信号的操作步骤及命令
- div 设置a4大小_A4纸网页打印 html网页页面的宽度设置成多少
- 鸟哥LINUX操作练习(8):Linux 磁盘与文件系统管理