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 相关文章推荐
PHP中的类-什么叫类
Nov 20 PHP
mysql5的sql文件导入到mysql4的方法
Oct 19 PHP
PHP5中使用DOM控制XML实现代码
May 07 PHP
在smarty模板中使用PHP函数的方法
Apr 23 PHP
php中AES加密解密的例子小结
Feb 18 PHP
PHP同时连接多个mysql数据库示例代码
Mar 17 PHP
php中file_get_content 和curl以及fopen 效率分析
Sep 19 PHP
php中return的用法实例分析
Feb 28 PHP
PHP中list方法用法示例
Dec 01 PHP
Laravel框架路由和控制器的绑定操作方法
Jun 12 PHP
实例分析PHP将字符串转换成数字的方法
Jan 27 PHP
关于Yii2框架跑脚本时内存泄漏问题的分析与解决
Dec 01 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
PHP 显示客户端IP与服务器IP的代码
2010/10/12 PHP
ThinkPHP自动验证失败的解决方法
2011/06/09 PHP
小程序微信支付功能配置方法示例详解【基于thinkPHP】
2019/05/05 PHP
如何取得中文输入的真实长度?
2006/06/24 Javascript
javascript showModalDialog模态对话框使用说明
2009/12/31 Javascript
javaScript 计算两个日期的天数相差(示例代码)
2013/12/27 Javascript
JavaScript正则表达式中的ignoreCase属性使用详解
2015/06/16 Javascript
JavaScript知识点总结(十一)之js中的Object类详解
2016/05/31 Javascript
JavaScript代码里的判断小结
2016/08/22 Javascript
Vue.js2.0中的变化小结
2017/10/24 Javascript
微信小程序实现tab切换效果
2017/11/21 Javascript
Angular实现的table表格排序功能完整示例
2017/12/22 Javascript
js实现上传并压缩图片效果
2018/01/10 Javascript
vue 监听键盘回车事件详解 @keyup.enter || @keyup.enter.native
2018/08/25 Javascript
Vue起步(无cli)的啊教程详解
2019/04/11 Javascript
jQuery实现动态加载(按需加载)javascript文件的方法分析
2019/05/31 jQuery
利用Electron简单撸一个Markdown编辑器的方法
2019/06/10 Javascript
jquery实现掷骰子小游戏
2019/10/24 jQuery
JavaScript实现拖拽功能
2020/02/11 Javascript
vue项目使用高德地图的定位及关键字搜索功能的实例代码(踩坑经验)
2020/03/07 Javascript
如何在vue 中引入使用jquery
2020/11/10 jQuery
python中遍历文件的3个方法
2014/09/02 Python
Python中的闭包总结
2014/09/18 Python
以一段代码为实例快速入门Python2.7
2015/03/31 Python
python创造虚拟环境方法总结
2019/03/04 Python
使用pip安装python库的多种方式
2019/07/31 Python
Python基本类型的连接组合和互相转换方式(13种)
2019/12/16 Python
keras实现调用自己训练的模型,并去掉全连接层
2020/06/09 Python
Html5获取高德地图定位天气的方法
2019/12/26 HTML / CSS
英国No.1文具和办公用品在线:Euroffice
2016/09/21 全球购物
Gerry Weber德国官网:优质女性时装,德国最大的时装公司之一
2019/11/02 全球购物
开会迟到检讨书
2014/02/03 职场文书
六个一活动实施方案
2014/03/21 职场文书
党的群众路线学习笔记
2014/11/06 职场文书
公司宣传语大全
2015/07/13 职场文书
Python实现制作销售数据可视化看板详解
2021/11/27 Python