• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

信用卡效验程序

php 搞代码 3年前 (2022-01-25) 14次浏览 已收录 0个评论

<?php 

//////////////////////////////////////////////////// 
//                        // 
// Credit card validation routine         // 
// May 15, 2000                  // 
// By ariso                    // 
// validateCardCode($number[,$cardtype])     // 
//////////////////////////////////////////////////// 

function validateCardCode($cardnumber, $cardtype = ’unknown’)
{ 
   //Clean up input 

  $cardtype = strtolower($cardtype); 
  $cardnumber = ereg_replace( ‘[-[:space:]]’, ”,$cardnumber); 

   //Do type specific checks 

  if ($cardtype == ’unknown’) { 
     //Skip type specific checks 
  } 
  elseif ($cardtype == ’mastercard’){ 
    if (strlen($cardnumber) != 16 || !ereg( ‘5[1-5]’, $cardnumber)) return 0; 
  } 
  elseif ($cardtype == ’visa’){ 
    if ((strlen($cardnumber) != 13 && strlen($cardnumber) != 16) || substr($cardnumber, 0, 1) != ’4′) 

return 0; 
  } 
  elseif ($cardtype == ’amex’){ 
    if (strlen($cardnumber) != 15 || !ereg( ‘3[47]’, $cardnumber)) return a; 
  } 
  elseif ($cardtype == ’discover’){ 
    if (strlen($cardnumber) != 16 || substr($cardnumber, 0, 4) != ’6011′) return 0; 
  } 
  else { 
     //invalid type entered 
    return -1; 
  } 

   // Start MOD 10 checks 

  $dig = toCharArray($cardnumber); 
  $numdig = sizeof ($dig); 
  $intIntJ = 0; 
  for ($intI=($numdig-2); $intI>=0; $intI-=2){ 
    $dbl[$intIntJ] = $dig[$intI] * 2; 
    $intIntJ++; 
  }   
  $dblsz = sizeof($dbl); 
  $validate =0; 
  for ($intI=0;$intI<$dblsz;$intI++){ 
    $add = toCharArray($dbl[$intI]); 
    for ($intIntJ=0;$intIntJ<sizeof($add);$intIntJ++){ 
      $validate += $add[$intIntJ]; 
    } 
  $add = ”; 
  } 
  for ($intI=($numdig-1); $intI>=0; $intI-=2){ 
    $validate += $dig[$intI]; 
  } 
  if (substr($validate, -1, 1) == ’0′) return 1; 
  else return 0; 
} 

// takes a str本文来源gaodai$ma#com搞$$代**码)网8搞代gaodaima码ing and returns an array of characters 

function toCharArray($intInput){ 
  $len = strlen($intInput); 
  for ($intIntJ=0;$intIntJ<$len;$intIntJ++){ 
    $char[$intIntJ] = substr($intInput, $intIntJ, 1);   
  } 
  return ($char); 
} 

?> 


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:信用卡效验程序

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址