php实现根据身份证获取精准年龄


Posted in PHP onFebruary 26, 2020

前言

有时候,我们希望通过身份证来计算出年龄,那么下面我写的函数很适合。

实现

代码中已有详细注释。

function getAge($id){

# 1.从身份证中获取出生日期
$id = $id;//身份证
$birth_Date = strtotime(substr($id, 6, 8));//截取日期并转为时间戳

# 2.格式化[出生日期]
$Year = date('Y', $birth_Date);//yyyy
$Month = date('m', $birth_Date);//mm
$Day = date('d', $birth_Date);//dd

# 3.格式化[当前日期]
$current_Y = date('Y');//yyyy
$current_M = date('m');//mm
$current_D = date('d');//dd

# 4.计算年龄()
$age = $current_Y - $Year;//今年减去生日年
if($Month > $current_M || $Month == $current_M && $Day > $current_D){//深层判断(日)
 $age--;//如果出生月大于当前月或出生月等于当前月但出生日大于当前日则减一岁
}
# 返回
return $age;

}

使用

通过调用 getAge() 方法,传入身份证号即可计算。

# 参数必须为 String 型
echo getAge('130322xxxxxxxxxx14');
// xx

小编再为大家分享一段代码:身份证获取年龄信息:

/*
* 根据身份证号码获取年龄
* inupt $code = 完整的身份证号
* return $age : 年龄
*/
function ageVerification($code){
 $age_time = strtotime(substr($code, 6, 8));
 if($age_time === false){
 return false;
 }
 list($y1,$m1,$d1) = explode("-",date("Y-m-d",$age_time)); 
 
 $now_time = strtotime("now");
 
 list($y2,$m2,$d2) = explode("-",date("Y-m-d",$now_time));
 $age = $y2 - $y1;
 if((int)($m2.$d2) < (int)($m1.$d1)){
 $age -= 1;
 }
 return $age; 
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
浅谈Windows下 PHP4.0与oracle 8的连接设置
Oct 09 PHP
php做下载文件的实现代码及文件名中乱码解决方法
Feb 03 PHP
PHP实现的多彩标签效果代码分享
Aug 21 PHP
PHP动态页生成静态页的3种常用方法
Nov 13 PHP
php生成验证码函数
Oct 20 PHP
PHP中strnatcmp()函数“自然排序算法”进行字符串比较用法分析(对比strcmp函数)
Jan 07 PHP
PHP进程通信基础之信号量与共享内存通信
Feb 19 PHP
自制PHP框架之设计模式
May 07 PHP
PHP实现打包下载文件的方法示例
Oct 07 PHP
PHP实现的折半查找算法示例
Dec 19 PHP
PHP ajax+jQuery 实现批量删除功能实例代码小结
Dec 06 PHP
thinkphp 5框架实现登陆,登出及session登陆状态检测功能示例
Oct 10 PHP
ThinkPHP5与单元测试PHPUnit使用详解
Feb 23 #PHP
PHP实现创建一个RPC服务操作示例
Feb 23 #PHP
php 使用ActiveMQ发送消息,与处理消息操作示例
Feb 23 #PHP
php实现通过stomp协议连接ActiveMQ操作示例
Feb 23 #PHP
php ActiveMQ的安装与使用方法图文教程
Feb 23 #PHP
php 多进程编程父进程的阻塞与非阻塞实例分析
Feb 22 #PHP
php7 图形用户界面GUI 开发示例
Feb 22 #PHP
You might like
咖啡是不是喝了会上瘾?咖啡是必须品吗!
2021/03/04 新手入门
PHP图片验证码制作实现分享(全)
2012/05/10 PHP
变量在 PHP7 内部的实现(一)
2015/12/21 PHP
MooTools 1.2介绍
2009/09/14 Javascript
jquery 学习之二 属性(类)
2010/11/25 Javascript
js判断浏览器类型的方法
2013/08/07 Javascript
如何在JavaScript中实现私有属性的写类方式(二)
2013/12/04 Javascript
JQuery对表格进行操作的常用技巧总结
2014/04/23 Javascript
JavaScript实现从数组中选出和等于固定值的n个数
2014/09/03 Javascript
JS事件添加和移出的兼容写法示例
2016/06/20 Javascript
基于JS如何实现给字符加千分符(65,541,694,158)
2016/08/03 Javascript
深入解析koa之中间件流程控制
2019/06/17 Javascript
vue实现axios图片上传功能
2019/08/20 Javascript
JavaScript适配器模式原理与用法实例详解
2020/03/09 Javascript
JavaScript享元模式原理与用法实例详解
2020/03/09 Javascript
[43:58]DOTA2-DPC中国联赛定级赛 LBZS vs SAG BO3第一场 1月8日
2021/03/11 DOTA
python目录与文件名操作例子
2016/08/28 Python
Python实现字典的遍历与排序功能示例
2017/12/23 Python
使用python的pandas库读取csv文件保存至mysql数据库
2018/08/20 Python
Python实现定时自动关闭的tkinter窗口方法
2019/02/16 Python
Python3.7安装pyaudio教程解析
2020/07/24 Python
如何通过python实现IOU计算代码实例
2020/11/02 Python
详解快速开发基于 HTML5 网络拓扑图应用
2018/01/08 HTML / CSS
Wiggle新西兰:自行车、跑步、游泳
2020/05/06 全球购物
《月光启蒙》教学反思
2014/03/01 职场文书
舞蹈专业大学生职业规划范文
2014/03/12 职场文书
消防宣传口号
2014/06/16 职场文书
党员对照检查材料思想汇报
2014/09/16 职场文书
党员剖析材料范文
2014/09/30 职场文书
2014离婚协议书范文(3篇)
2014/11/29 职场文书
介绍信如何写
2015/01/31 职场文书
学校少先队工作总结
2015/08/12 职场文书
2016年社区党支部公开承诺书
2016/03/25 职场文书
Python自动化爬取天眼查数据的实现
2021/06/15 Python
html+css实现滚动到元素位置显示加载动画效果
2021/08/02 HTML / CSS
JavaScript parseInt0.0000005打印5原理解析
2022/07/23 Javascript