PHP校验15位和18位身份证号

news2024/11/24 17:28:14

第十八位数字的计算方法为:

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.通过上面得知如果余数是2,就会在身份证的第18位数字上出现罗马数字的Ⅹ。如果余数是10,身份证的最后一位号码就是2。

/**
** Class IDCardFilter
** 身份证号规则
** 15位: 省份(2位) + 地级市(2位) + 县级市(2位) + 出生年(2位) + 出生月(2位) + 出生日(2位) + 顺序号(3位)
** 18位: 省份(2位) + 地级市(2位) + 县级市(2位) + 出生年(4位) + 出生月(2位) + 出生日(2位) + 顺序号(3位) + 校验位(1位)
** 相比之下,18位 比 15位 多出生年 2位、校验位 1位。
** 其中,顺序号如果是偶数,则说明是女生,顺序号是奇数,则说明是男生。
*/

正则校验

15位转18位
生成校验码
校验省份
检验生日
校验码对比
身份证号检测

$IDCardModel = new IDCardFilter();

$IDCardModel->vaild(‘身份证号’);    //返回bool

注:身份证验证类IDCardFilter.php

作者:flamez57

喜欢 0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1604987.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

遇事不决 量子力学?

文章目录 引入量子力学产生的必然性量子力学名称的由来粒子?波?波粒二象性测不准原理 (不确定原理)叠加态原理 量子纠缠态叠加量子纠缠量子纠缠实验 逻辑判断,量子力学到底完善吗观测量子纠缠?那我们宏观世…

AUS Global 与皇家贝蒂斯俱乐部在对战皇家马德里的比赛日举办现场体验活动

AUS Global 最近前往西班牙庆祝与皇家贝蒂斯的赞助合作,并获得了难忘的比赛日体验,包括在贵宾室中观看皇家贝蒂斯对阵皇家马德里的精彩比赛。 活动开始时,AUS Global 受邀来到皇家贝蒂斯主场贝尼托-比利亚马林体育场的独家 Showbox 贵宾室。…

vue3 源码解析(7)— diff 算法源码的实现

前言 vue3 采用的 diff 算法名为快速 diff 算法,整个 diff 的过程分为以下5个阶段完成。 处理前置节点处理后置节点处理仅有新增节点处理仅有删除节点处理其他情况(新增 / 卸载 / 移动) 这里我们先定义新旧两个节点列表,接下来…

4款免费又好用的AI工具!很难相信!

人工智能(AI)已经成为我们生活和工作中不可或缺的一部分。但是,一提到AI工具,你可能首先会想到的是高昂的价格和复杂的操作。 今天,君君就要打破这一刻板印象,带你认识4个AI工具,它们不仅功能强…

《QT实用小工具·二十七》各种炫酷的样式表

1、概述 源码放在文章末尾 该项目实现了各种炫酷的样式表,如单选、多选、按钮、日历、表格、下拉框、滚轮等,下面是项目demo演示: 项目部分代码如下: #include "frmmain.h" #include "ui_frmmain.h" #inc…

数仓建模—数据架构

数仓—数据架构 为了在企业决策中使用数据,数据必须经过整个数据平台的各个阶段。整个过程是什么样子的,从开始到结束?原始形式的数据是如何转化为可导致商业决策的见解的?这些问题可以通过数据架构来回答。 数据架构是指记录组织所有数据资产的模型、规则和标准。它映射…

Zephyr Windows开发环境搭建

Zephyr 如果有错误或未及时更新,请以官网文档为主 官网:https://docs.zephyrproject.org/latest/develop/getting_started/index.htm 下载安装 Chocolatey 这是一个类似于在Linux系统下 yum 和 apt 那样的包管理器 官网:https://chocolat…

平衡车设计——硬件篇

在本文开始之前我忍不住想吐槽一个事情,就在前两天晚上,我满意地装完平衡车,给他取了个名字叫瓦力(没错,就是机器人总动员里的瓦力),他长这个样子。 把他放到桌子上放了一夜,第二天早…

【vue】Pinia-2 安装Pinia,使用store

1. 安装Pinia 在项目路径下执行npm install pinia 在package.json中查看 2. 使用store 在main.js中添加 import { createPinia } from pinia const pinia createPinia()修改createApp方法 最后示例如下(三处修改) import { createApp } from vue //…

Jmeter接口测试:使用教程(下)

🍅 视频学习:文末有免费的配套视频可观看 🍅 关注公众号:互联网杂货铺,回复1 ,免费获取软件测试全套资料,资料在手,涨薪更快 上一篇我给大家讲了jmeter的基本介绍跟参数化和jmeter脚…

【开发者召集】BIMBase插件开发大赛火热报名中!| python开发 | python建模 | 二次开发 | 图形引擎 | 几何引擎

📢 致所有热爱创新的技术大咖们: 让我们回顾一下,在之前的推文中,我们收集了各种各样的BIM插件命题~ 小伙伴们的热情让小编倍感振奋~ 因为,每一个命题都蕴藏着解决实际问题的潜力,每一个也都代表着创新的可…

工业级POE交换机的ACL

工业级POE交换机通常支持访问控制列表(Access Control List,ACL)功能,用于实施网络安全策略。ACL可以根据源IP地址、目标IP地址、传输协议、端口号等条件来过滤和控制网络流量。 通过配置ACL,可以实现以下功能&#xf…

Docker 磁盘占用过多问题处理过程记录

一、问题描述 突然发现服务器磁盘使用超过95%了(截图时2.1 和 2.2 已经执行过了) 二、问题分析与解决 2.1,docker 无用镜像占用磁盘 # 使用 docker images 查看服务的镜像 docker images# 可以手动删除一些很大不用的 docker rmi ***## 也…

【C语言】字符函数和字符串函数,详解,进来就会!

🔥博客主页🔥:【 坊钰_CSDN博客 】 欢迎各位点赞👍评论✍收藏⭐ 目录 1. 字符分类函数 2. 字符转换函数 3. strlen的使⽤和模拟实现 3.1 采用指针-指针方式 3.2 采用递归方式 3.3 采用计数器方式 4. strcpy的使⽤和模拟实现 …

如何在本地创建一个贪吃蛇小游戏node.js服务并实现无公网IP远程游玩

文章目录 前言1.安装Node.js环境2.创建node.js服务3. 访问node.js 服务4.内网穿透4.1 安装配置cpolar内网穿透4.2 创建隧道映射本地端口 5.固定公网地址 正文开始前给大家推荐个网站,前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽…

荔枝派LicheePi 4A RISCV板子支持的好玩的AI模型

荔枝派LicheePi 4A 是基于 Lichee Module 4A 核心板的 高性能 RISC-V Linux 开发板,以 TH1520 为主控核心(4xC9101.85G, RV64GCV,4TOPSint8 NPU, 50GFLOP GPU),板载最大 16GB 64bit LPDDR4X&…

mysql查看数据库表容量大小

【推荐】单表行数超过 500 万行或者单表容量超过 2GB,才推荐进行分库分表。 说明:如果预计三年后的数据量根本达不到这个级别,请不要在创建表时就分库分表。 1. 查询所有数据库记录数和容量 SELECTtable_schema AS 数据库,SUM(table_rows) …

MySQL高级(性能分析-查看执行频次、慢查询日志)

目录 1、SQL性能分析 1.1、SQL执行频率 1.2、慢查询日志 1、SQL性能分析 1.1、SQL执行频率 MySQL 客户端连接成功后,通过 show [ session | global ] status 命令可以提供服务器状态信息。通过如下指令,可以查看当前数据库的 insert、update、delete、…

物理页采样内核配置damon和perf

一、安装报错Missing file: arch/x86/boot/bzImage [sudo] password for xmu: arch/x86/Makefile:142: CONFIG_X86_X32 enabled but no binutils support sh ./arch/x86/boot/install.sh 5.15.19-htmm-test1 \arch/x86/boot/bzImage System.map "/boot"*** Missing…

电商网站建设开发

随着互联网技术的飞速发展,电子商务已经成为一种全新的商业模式,许多传统的企业也开始涉足电商领域。对于想要进行网络销售的企业来说,电商网站建设开发是非常重要的环节。下面将从几个方面介绍电商网站建设开发的必要性和关键点。 一、 提升…