PHP验证银行卡

/**
 * 校对银行卡
 * @param $card
 * @return bool
 */
private function _validataBankCard($card){
    $arr_no = str_split($card);
    $last_n = $arr_no[count($arr_no)-1];
    krsort($arr_no);
    $i = 1;
    $total = 0;
    foreach ($arr_no as $n){
        if($i%2==0){
            $ix = $n*2;
            if($ix>=10){
                $nx = 1 + ($ix % 10);
                $total += $nx;
            }else{
                $total += $ix;
            }
        }else{
            $total += $n;
        }
        $i++;
    }
    $total -= $last_n;
    $total *= 9;
    return $last_n == ($total%10);
}

發表回覆

你的電郵地址並不會被公開。 必要欄位標記為 *