今天给各位分享php怎么判断身份证号码的知识,其中也会对php怎么判断身份证号码大小进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录:
PHP判断是否是身份证号
/**
* 判断是否为合法的身份证号码
* @param $mobile
* @return int
*/
function isCreditNo($vStr){
$vCity = array(
'11','12','13','14','15','21','22',
'23','31','32','33','34','35','36',
'37','41','42','43','44','45','46',
'50','51','52','53','54','61','62',
'63','64','65','71','81','82','91'
);
if (!preg_match('/^([\d]{17}[xX\d]|[\d]{15})$/', $vStr)) return false;
if (!in_array(substr($vStr, 0, 2), $vCity)) return false;
$vStr = preg_replace('/[xX]$/i', 'a', $vStr);
$vLength = strlen($vStr);
if ($vLength == 18) {
$vBirthday = substr($vStr, 6, 4) . '-' . substr($vStr, 10, 2) . '-' . substr($vStr, 12, 2);
} else {
$vBirthday = '19' . substr($vStr, 6, 2) . '-' . substr($vStr, 8, 2) . '-' . substr($vStr, 10, 2);
}
if (date('Y-m-d', strtotime($vBirthday)) != $vBirthday) return false;
if ($vLength == 18) {
$vSum = 0;
for ($i = 17 ; $i = 0 ; $i--) {
$vSubStr = substr($vStr, 17 - $i, 1);
$vSum += (pow(2, $i) % 11) * (($vSubStr == 'a') ? 10 : intval($vSubStr , 11));
}
if($vSum % 11 != 1) return false;
}
return true;
}
php 检查字符串中是否存在身份证号
15位数身份证验证正则表达式:
$sfzh=preg_match(“/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/
”,"字符串");
$sfzh=preg_match(“/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/”,"字符串");
怎么检测身份证号码是否正确?
身份信息核查是利用“全国公民身份信息系统(NCIIS)”,通过短信、wap等数据平台和互联网,为满足行业用户或个人用户及时确定被核查人身份信息需求而推出的一项便民服务。
现在很多人通过网络查询验证身份信息,像红云快查。只需要打开微信,搜索:红云快查,填入姓名和身份号码就可以核验是否一致、归属地、出生日期等信息,非常的方便,节省时间。
身份证号码中的校验码是身份证号码的最后一位,是有关公民身份号码的规定,根据精密的计算公式计算出来的,公民身份号码是特征组合码,由十七位数字本体码和一位数字校验码组成。
18位号码的身份证各数字位是有规律的,第十八位是检校位,对前17位加权运算去余再映射,得到的结果是唯一的。但结果只有一个:即这个身份证号的算法是正确或不正确的,是否真实存在不保证。
倒数第二位单数代表男,双数代表女,前六位可以分析出省份市区即县镇,接着是生日,这个就比较显然了。而倒数后三位是随机的,只与当地派出所有一点关系。所以根据这些信息你可以做简单判断
使用WPS Office打开表格,选中需要处理的单元格,依次点击“文档助手”—“HR助手”,选择“身份证信息提取“功能,如果提示“格式不合法”是因为表格数据不是正确的身份证。可根据此项功能判断身份证号的正确性~
1、开excel表格,在表格中可看到身份证号码常出现的问题为“身份证的位数不足”。
2、以及“身份证上的时间不符合实际”,“身份证重复”,点击“D3单元格”。
3、函数的第二部分:检验身份证号是否唯一,函数第三部分:确定身份证日期是否合法。主要判断月份是否在1-12之间,日期是否超出当月的天数。
怎样判断身份证号有效?
1、将前面的身份证号码17位数分别乘以不同的系数。从第一位到第十七位的系数分别为:7-9-10-5-8-4-2-1-6-3-7-9-10-5-8-4-2。
2、将这17位数字和系数相乘的结果相加。
3、用加出来和除以11,看余数是多少?
4、余数只可能有0-1-2-3-4-5-6-7-8-9-10这11个数字。其分别对应的最后一位身份证的号码为1-0-X -9-8-7-6-5-4-3-2。
5、通过上面得知如果余数是3,就会在身份证的第18位数字上出现的是9。如果对应的数字是2,身份证的最后一位号码就是罗马数字x。
例如:某男性的身份证号码为【53010219200508011x】, 我们看看这个身份证是不是合法的身份证。
首先我们得出前17位的乘积和【(5*7)+(3*9)+(0*10)+(1*5)+(0*8)+(2*4)+(1*2)+(9*1)+(2*6)+(0*3)+(0*7)+(5*9)+(0*10)+(8*5)+(0*8)+(1*4)+(1*2)】是189,然后用189除以11得出的结果是189/11=17----2,也就是说其余数是2。最后通过对应规则就可以知道余数2对应的检验码是X。所以,可以判定这是一个正确的身份证号码。
php怎么判断身份证号码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于php怎么判断身份证号码大小、php怎么判断身份证号码的信息别忘了在本站进行查找喔。