PHP校验身份证

18位身份证由6位地址+8位生日+3位顺序码(单数男,双数女)和最后一位校验码(ISO 7064:1983.MOD 11-2),6位地址里面前两位为省份,中间两位为市,后面两位为区、镇。

校验码

将前面的身份证号码17位数分别乘以不同的系数。从第一位到第十七位的系数分别为:7-9-10-5-8-4-2-1-6-3-7-9-10-5-8-4-2,然后再除以11取余,得到的值再在对比位数就可以计算出校验码。

<?php

$id = "11010129990101001";

$fa = array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2);
$check = array("1","0","X","9","8","7","6","5","4","3","2");

$sum = 0;
for($i = 0;$i<17;$i++){
    $sum += $id[$i] * $fa[$i];
}
$checkcode = $check[$sum%11];
echo $checkcode;

?>
none

发表评论

1条评论

    心灵博客

    2020-08-14 Mac / Chrome 回复

    没想到这么简单,收藏了


设置
配色方案

布局

现在购买