如何封装PHP校验15位和18位身份证号的类?

2026-04-02 20:380阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1753个文字,预计阅读时间需要8分钟。

如何封装PHP校验15位和18位身份证号的类?

新公司框架源码近期发现新功能,能搜索一串并封装身份验证标识。目前,大部分身份证号码是18位的,但也包括少数15位的老人身份证。

新公司框架源码的时候,发现了这个功能,于是搜索一番并封装了一下身份证号校验的类。

目前大家的身份证号大多是 18 位的,当然,也不排除有些老人的身份证号是 15 位的。

如果强制要求是 18 位的话,会比较好,因为 15 位的身份证号没有校验码,可以说,只要了解大概结构,随手都可以造出一系列身份证号码来。

当然,如果只是单纯的程序校验, 18 位的身份证号码也可以伪造,就是需要伪造者花点心思。

最好的还是调用相关部门给的接口,进行校验。

本文所编写的身份证号码校验,只是针对相关规则下的计算,是调用接口前能做的事情。

如何封装PHP校验15位和18位身份证号的类?

身份证号规则

15位:省份(2位) + 地级市(2位) + 县级市(2位) + 出生年(2位) + 出生月(2位) + 出生日(2位) + 顺序号(3位)

18位:省份(2位) + 地级市(2位) + 县级市(2位) + 出生年(4位) + 出生月(2位) + 出生日(2位) + 顺序号(3位) + 校验位(1位)

相比之下, 18位 比 15位 多出生年 2位 、校验位 1位 。

其中,顺序号如果是偶数,则说明是女生,顺序号是奇数,则说明是男生。

阅读全文
标签:封装

本文共计1753个文字,预计阅读时间需要8分钟。

如何封装PHP校验15位和18位身份证号的类?

新公司框架源码近期发现新功能,能搜索一串并封装身份验证标识。目前,大部分身份证号码是18位的,但也包括少数15位的老人身份证。

新公司框架源码的时候,发现了这个功能,于是搜索一番并封装了一下身份证号校验的类。

目前大家的身份证号大多是 18 位的,当然,也不排除有些老人的身份证号是 15 位的。

如果强制要求是 18 位的话,会比较好,因为 15 位的身份证号没有校验码,可以说,只要了解大概结构,随手都可以造出一系列身份证号码来。

当然,如果只是单纯的程序校验, 18 位的身份证号码也可以伪造,就是需要伪造者花点心思。

最好的还是调用相关部门给的接口,进行校验。

本文所编写的身份证号码校验,只是针对相关规则下的计算,是调用接口前能做的事情。

如何封装PHP校验15位和18位身份证号的类?

身份证号规则

15位:省份(2位) + 地级市(2位) + 县级市(2位) + 出生年(2位) + 出生月(2位) + 出生日(2位) + 顺序号(3位)

18位:省份(2位) + 地级市(2位) + 县级市(2位) + 出生年(4位) + 出生月(2位) + 出生日(2位) + 顺序号(3位) + 校验位(1位)

相比之下, 18位 比 15位 多出生年 2位 、校验位 1位 。

其中,顺序号如果是偶数,则说明是女生,顺序号是奇数,则说明是男生。

阅读全文
标签:封装