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

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php实现用于验证所有类型的信用卡类脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

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

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

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

<PRe class="brush:PHp;"> <>PHP // 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,4); $cclen = strlen($number); $chksum = 0; // Diners Club if (($left >= 3000) && ($left <= 3059)="" ||="" ($left="">= 3600) && ($left <= 3699)="" ||="" ($left="">= 3800) && ($left <= 3889))="" if="" ($cclen="" !="14)" return="" false;="" jcb="" if="" (($left="">= 3088) && ($left <= 3094)="" ||="" ($left="">= 3096) && ($left <= 3102)="" ||="" ($left="">= 3112) && ($left <= 3120)="" ||="" ($left="">= 3158) && ($left <= 3159)="" ||="" ($left="">= 3337) && ($left <= 3349)="" ||="" ($left="">= 3528) && ($left <= 3589))="" if="" ($cclen="" !="16)" return="" false;="" american="" express="" elseif="" (($left="">= 3400) && ($left <= 3499)="" ||="" ($left="">= 3700) && ($left <= 3799))="" if="" ($cclen="" !="15)" return="" false;="" carte="" blanche="" elseif="" (($left="">= 3890) && ($left <= 3899))="" if="" ($cclen="" !="14)" return="" false;="" visa="" elseif="" (($left="">= 4000) && ($left <= 4999))="" if="" ($cclen="" !="13" &&="" $cclen="" !="16)" return="" false;="" mastercard="" elseif="" (($left="">= 5100) && ($left <= 5599))="" if="" ($cclen="" !="16)" return="" false;="" australian="" bankcard="" elseif="" ($left="=" 5610)="" if="" ($cclen="" !="16)" return="" false;="" discover="" elseif="" ($left="=" 6011)="" if="" ($cclen="" !="16)" return="" false;="">Nown else return FALSE; for ($j = 1 - ($cclen % 2); $j < $cclen;="" $j="" +="2)" $chksum="" +="substr($number,$j,1);" for="" ($j="$cclen" %="" 2;="" $j="">< $cclen;="" $j="" +="2)" {="" $d="substr($number,1)" *="" 2;="" $chksum="" +="$d">< 10="" $d="" :="" $d="" -="" 9;="" }="" if="" ($chksum="" %="" 10="" !="0)" return="" false;="" if="" (mktime(0,substr($expiry,2),date("t"),2,2))="">< time())="" return="" false;="" return="" true;="" }="">

脚本宝典总结

以上是脚本宝典为你收集整理的php实现用于验证所有类型的信用卡类全部内容,希望文章能够帮你解决php实现用于验证所有类型的信用卡类所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。