身份證合法性檢查程式 (計算最後一位檢驗碼)

2021-05-25 14:28:18 字數 545 閱讀 9333

[ 理論 ]

18位身份證:前6位是區位碼(表示區域),接下來8位是表示出生日期,接下來3位是本區域的所有當天出生的人的序列號(奇數為男,偶數為女),最後1位是整個前面17位的運算得出的校驗碼,演算法下面有實現。

15位身份證:前6位是區位碼,接下來6位是出生日期(沒有19),接下來3位是當天出生的人的序列號(奇數為男,偶數為女)

15位轉18位:日期前面增加19,然後得出17位,最後通過這個17位運算得到最後1位校驗碼

<?php

function get_idcard_sign($body)) * $wi[$i];

}

return $ai[($sigma % 11)];

}

echo get_idcard_sign('440102219901010011');

echo get_idcard_sign('36072119570624220x');

echo get_idcard_sign('360721195706240917');

?>

**黑夜路人

身份證合法性驗證

2015年10月14日 16 42 22 從網上扒的,刪掉了一小段無用 修改了一行判斷省份的 1 2 身份證號驗證 相容15,18位 3 4function checkidentitycode idcard 5 12 city array 13 11 北京 12 天津 13 河北 14 山西 15 ...

身份證合法性驗證

2015年10月14日 16 42 22 從網上扒的,刪掉了一小段無用 修改了一行判斷省份的 1 2 身份證號驗證 相容15,18位 3 4function checkidentitycode idcard 5 12 city array 13 11 北京 12 天津 13 河北 14 山西 15 ...

身份證合法性校驗模板

這個可以驗證15位和18位的身份證,並且包含生日和校驗位的驗證。如果有興趣,還可以加上身份證所在地的驗證,就是前6位有些數字合法有些數字不合法。function isidcardno num num num.touppercase 身份證號碼為15位或者18位,15位時全為數字,18位前17位為數字...