首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

PHP验证身份证格式

互联网公司对身份证验证的需求越来越多,然而普通的小公司是无法对接公安部门的身份认证系统的。几乎都是在网上买一些大的互联网公司的一些认证服务。即使是便宜一些的认证价格也达到了10万次/万元。...这里提供一个初步验证身份证格式的PHP身份证验证类。该类只提供一个静态方法isValid接口,使用起来也很简单,只需要使用IdentityCard::isValid即可验证。...该方法可以同时验证15位的老身份证和18位的新身份证格式 PHP版本:>=7.0.0 注:如果PHP版本低于7.0版本只需要把类中方法的参数限制取消掉即可使用。...,比如670401代表1967年4月1日,这是和18位号码的第一个区别; //13-15位为顺序号,其中15位男为单数,女为双数; //与18位身份证号的第二个区别:没有最后一位的验证码。...以上就是PHP验证身份证格式的详细内容,更多请关注php交流群793603132

2.6K21

浅谈正则表达式验证身份证号码(C# winform)

先大概介绍一下身份证号码的组成情况(来自百度): 目前我国公民身份证号码由18位数字组成:前6位为地址码,第7至14位为出生日期码,第15至17位为顺序码,第18位为校验码。...虽然校验码为“X”不能更换,但若需全用数字表示,只需将18位公民身份号码转换成15位居民身份证号码,去掉第7至8位和最后1位3个数码。 当今的身份证号码有15位和18位之分。...1985年我国实行居民身份证制度,当时签发的身份证号码是15位的,1999年签发的身份证由于年份的扩展(由两位变为四位)和末尾加了效验码,就成了18位。这两种身份证号码将在相当长的一段时期内共存。...两种身份证号码的含义如下: 18位的身份证号码 如:130429####%%%%0078 1~6位为地区代码,其中1、2位数为各省级政府的代码,3、4位数为地、市级政府的代码,5、6位数为县、区级政府代码...以上正在表达式(红色部分)只能判断以下3种情况:   1、身份证号码为15位数字; 2、身份证号码为18位数字; 3、身份证号码为17位数字+1个字母    个人觉得,身份证组成还有出生年月至少应该加上一个日期判断

1.2K20

身份证号码的正则表达式验证详解(JavaScript,Regex)

简言 在做用户实名验证时,常会用到身份证号码的正则表达式及校验方案。本文列举了两种验证方案,大家可以根据自己的项目实际情况,选择适合的方案。...以北京市朝阳区一女性身份证号码为例,身份证号码所表示的含义如下图所示: [身份证号码含义解析] 注:该身份证号码来源于国标【GB 11643-1999】。...1.2 方案1正则表达式 综合以上6条规则,给出完整的正则表达式及测试程序如下: var p = /^[1-9]\d{5}(18|19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2...例:我国并不存在16,26开头的地区,却可通过验证 日期判定不够精确。...checkID("110105194902310026")); //输出 false,地区码不符 console.log(checkID("160105194912310029")); 演示代码 以上为毛三十对身份证号码验证的理解和分析

23.6K134

身份证号码验证算法

做项目的时候需要对拿到的数据进行“清洗”,比如剔除一些不可能存在的身份证号码。查阅了网上的身份证号码验证算法,自己也总结一下。...(一)18身份证号码的结构 公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。 排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位校验码。 ...public static void main(String[] args){ Id18 test=new Id18(); System.out.println("该身份证验证码...:"+test.getValidateCode("14230219700101101")); //该身份证校验码:3 } } (三)说明 1.程序可以根据已有的17位数字本体码,获取对应的验证码...2.该程序可以剔除验证码不正确的身份证号码。 3.15位的身份证出生年份采用年份后2位,没有最后1位校验码。 4.完整的身份证18位,最后一位校验位可能是非数字。

2.3K60

身份证号码验证算法

博客园 链接:http://www.cnblogs.com/xudong-bupt/p/3293838.html(点击尾部阅读原文前往) 做项目的时候需要对拿到的数据进行“清洗”,比如剔除一些不可能存在的身份证号码...查阅了网上的身份证号码验证算法,自己也总结一下。 (一)18身份证号码的结构 公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。...public static void main(String[] args){ Id18 test=new Id18(); System.out.println("该身份证验证码...:"+test.getValidateCode("14230219700101101")); //该身份证校验码:3 } } (三)说明 1、程序可以根据已有的17位数字本体码,获取对应的验证码...2、该程序可以剔除验证码不正确的身份证号码。 3、15位的身份证出生年份采用年份后2位,没有最后1位校验码。 4、完整的身份证18位,最后一位校验位可能是非数字。

1.9K50

PHP正则表达式验证手机号、邮箱、身份证号码、姓名等

而PHP给我提供了正则表达式验证函数,我们可以很方便的通过正则表达式验证函数,来检查数据流是否符合标准。今天我们就列出一些常用的正则表达式,就当做一个记录吧。...而PHP给我提供了正则表达式验证函数,我们可以很方便的通过正则表达式验证函数,来检查数据流是否符合标准。 今天我们就列出一些常用的正则表达式,就当做一个记录吧。...+([a-z]{2,5})$/ims';if(preg_match($preg_email,$email)){     echo 1;}else{     echo 0;} PHP验证身份证正则表达式代码...|(^\d{17}([0-9]|X)$/isu';if(preg_match($preg_card,$IDCard)){     echo 1;}else{     echo 0;} 注意:这里只是对身份证号中的数字与位数进行的验证...,如果想要严格的验证,请参考本博客的关于身份证号码验证的其它文章。

3.4K20

揭开身份证验证的神秘面纱

正则验证身份证号码 HTML5学堂:曾经一直觉得用正则验证身份证号码是很简单的~但是,当真正挖掘身份证号码的规则之后,才发现,想要写好一个正则验证也没有那么容易。...Y = [ 1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2 ] * 如果验证码恰好是10,为了保证身份证是十八位,那么第十八位将用X来代替 */ 校验位计算方法:身份证前17位,每一位数字和相应位数的加权因子进行乘法运算...,之后求和(17项之和),再用这个和对11取余,所得的余数作为“验证位数组Y”的下标,也就是Y[余数],找到“验证位数组Y”中的相应数字,如果身份证最后一位和这个数字吻合,则身份证号码合法(如果最后一位是...X/x,就对应于“验证位数组Y”中的10这个数字) 简单的号码计算小例子 假如是这个身份证号码(这个身份证号码是我瞎编的):110203198811120342。...此时将0与身份证号的最后一位(2)做比较,很明显,错误,那么也证明了这个号码是我瞎编的了…… 验证身份证号码的正则如何写?

1.8K50

身份证号码验证算法

做项目的时候需要对拿到的数据进行“清洗”,比如剔除一些不可能存在的身份证号码。查阅了网上的身份证号码验证算法,自己也总结一下。...(一)18身份证号码的结构 公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。 排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位校验码。 ...public static void main(String[] args){ Id18 test=new Id18(); System.out.println("该身份证验证码...:"+test.getValidateCode("14230219700101101")); //该身份证校验码:3 } } (三)说明 1.程序可以根据已有的17位数字本体码,获取对应的验证码...2.该程序可以剔除验证码不正确的身份证号码。 3.15位的身份证出生年份采用年份后2位,没有最后1位校验码。 4.完整的身份证18位,最后一位校验位可能是非数字。

6.2K10

使用FME验证身份证号码

内容简介 本篇推送,将简单介绍一下怎么使用FME来验证身份证号码。 身份证号码 结构: 公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。...身份证号码验证 了解过身份证的组成以及验证规则之后,下面就要开始验证了。 验证方式 身份证号的验证,可以分为这么几个部分:1、地址码验证,2、出生日期验证,3、顺序码验证,4、校验码验证。...其中地址码验证比较简单,只需提取出身份证的前6位,与县级行政区划代码做个验证即可。顺序码的验证,只需将第17位提取出来做奇偶性与性别的验证即可。所以接下来的验证将着眼于两部分:日期与校验码!...日期校验 要验证身份证中的日期,首先要把日期信息提取出来。...所以这个身份证号码是有问题的。 ? 验证验证 根据身份证验证码规则,需要将身份证的每一位乘上其加权因子,然后再与11取余,得到的余数再到对应的校验码表中,查找对应的校验码。

2K20
领券