47.3. 身份证校验

简介:

 
<?php

function check_id_number($no){
if (strlen($no) != 18){
return false;
}
$sigma = 0;
$wi = array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2);
$ai = array('1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2');
for ($i = 0;$i < 17;$i++) {
    $sigma += ((int) $no{$i}) * $wi[$i];
}

if (substr($no,17) == $ai[($sigma % 11)]){
return true;
}else{
return false;
}
}

echo check_id_number('330702198003090915');  
  
 





原文出处:Netkiller 系列 手札
本文作者:陈景峯
转载请与作者联系,同时请务必标明文章原始出处和作者信息及本声明。

目录
相关文章
|
7月前
|
Linux 网络安全
linux/服务器使用scp将一个服务器文件转移到另一个服务器上
linux/服务器使用scp将一个服务器文件转移到另一个服务器上
1566 3
|
7月前
|
SQL 人工智能 关系型数据库
【开源项目推荐】-支持GPT的智能数据库客户端与报表工具——Chat2DB
【开源项目推荐】-支持GPT的智能数据库客户端与报表工具——Chat2DB
550 2
|
7月前
|
安全 关系型数据库 MySQL
Nacos常见问题之登录报错如何解决
Nacos是一款易于使用的动态服务发现、配置管理和服务管理平台,针对不同版本可能出现的兼容性和功能问题,本汇总贴心整理了用户在使用Nacos时可能遇到的版本相关问题及答案,以便用户能够更顺畅地进行服务治理和配置管理。
1151 0
|
安全 前端开发 Java
Elasticsearch系列——Linux中的Elasticsearch安装与测试
Elasticsearch系列——Linux中的Elasticsearch安装与测试
|
API 数据库
身份证实名认证接口验证不一致的原因
身份证是每个公民最常用的身份证明,随着当今互联网的快速发展,日常生活中越来越多的场景需要进行身份核验,以身份证实名认证为基础的网络实名制也引起了各行业的关注,随着实名制认证应用情景的多元化,众多网络平台对实名制验证机制的要求也越发严格。
589 0
身份证实名认证接口验证不一致的原因
|
机器学习/深度学习 传感器 算法
微电网鲁棒定价策略附matlab实现
微电网鲁棒定价策略附matlab实现
对接身份证实名认证接口
官方直连、方便便捷、秒对接身份证实名认证接口
1785 0
|
存储 安全 Python
pc取证-番外篇(2)
pc取证-番外篇(2)
152 0
|
数据采集 数据挖掘 索引
Pandas中read_excel函数参数使用详解+实例代码
Pandas中read_excel函数参数使用详解+实例代码
737 0
Pandas中read_excel函数参数使用详解+实例代码
|
人工智能 JSON 移动开发
DingTalk「开发者说」钉钉连接平台,OA审批场景下如何实现系统互通
钉钉连接平台通过简单的低代码配置,帮助企业迅捷实现系统集成和连接,降低集成实施的周期和成本。本文主要介绍在OA审批场景下,如何通过连接平台实现系统互通。
2173 0
DingTalk「开发者说」钉钉连接平台,OA审批场景下如何实现系统互通