銀行卡號驗證 php

2021-09-26 13:48:12 字數 617 閱讀 6135

<?php

/* 16-19 位卡號校驗位採用 luhn 校驗方法計算:

第一步:把信用卡號倒序(61789372994)

第二步:取出倒序後的奇數字置上的號碼, 相加等到總和s1。(eg:s1=6+7+9+7+9+4=42)

第三步:取出倒序後的偶數字置上的號碼,每個號碼乘以2。 (eg:2,16,6,4,18)

第四步:把第三步得到的大於10的號碼轉化為個位+十位。(eg:2,7,6,4,9)

第五步:把處理好的偶數字號碼相加,得到s2。 (eg:s2=2+7+6+4+9=28)

第六步:判讀(s1+s2)%10 == 0則有效,否則無效。(有效)

*/function checkbankcard($card)

$/';

if (!preg_match($pattern,$card))

// step2 luhn 演算法校驗

$len = strlen($card);

$sum = 0;

for ($i = 0; $i < $len ; $i++)

else

}return $sum % 10 === 0;

}

銀行卡號驗證js Luhn演算法

銀行卡號校驗 description 銀行卡號luhm校驗 luhm校驗規則 16位銀行卡號 19位通用 1.將未帶校驗位的 15 或18 位卡號從右依次編號 1 到 15 18 位於奇數字型大小上的數字乘以 2。2.將奇位乘積的個十位全部相加,再加上所有偶數字上的數字。3.將加法和加上校驗位能被 ...

銀行卡號規則

答案一 前6位數字為發卡銀行識別號 bin 由iso國際組織統一制定。最後一位是校驗位,由前面組成卡號的十多位數字 常見的iso卡號有13位 16位 19位 通過特定演算法計算。前6位和最後一位之間的數字為金融機構自定義的卡號,有些銀行採用發卡地代號加卡序號的方式編碼 有些銀行的卡則是全國大序列。只...

通過銀行卡號識別歸屬銀行,php方式

這個例子不是很全,要做到齊全必須使用資料庫字典來索引,而且資料量龐大,建議生產使用時限制幾大行就行,直接不支援其他小行。此案例拋磚引玉 銀行卡資訊識別相關類 把bin號轉化為長整形,再把各個銀行卡的bin號做成有序表。通過二分查詢的方法,找到bin號在有序表的位置,然後讀出銀行卡的資訊。todo 字...