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 相关文章推荐
Search Engine Friendly的URL设计
Oct 09 PHP
php表单转换textarea换行符的方法
Sep 10 PHP
php遍历类中包含的所有元素的方法
May 12 PHP
PHP实现微信发红包程序
Aug 24 PHP
给PHP开发者的编程指南 第一部分降低复杂程度
Jan 18 PHP
PHP中header用法小结
May 23 PHP
php正则表达式基本知识与应用详解【经典教程】
Apr 17 PHP
php + nginx项目中的权限详解
May 23 PHP
windows下的WAMP环境搭建图文教程(推荐)
Jul 27 PHP
php注册系统和使用Xajax即时验证用户名是否被占用
Aug 31 PHP
php使用curl模拟浏览器表单上传文件或者图片的方法
Nov 10 PHP
PHP实现获取毫秒时间戳的方法【使用microtime()函数】
Mar 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中有关合并某一字段键值相同的数组合并的改进
2015/03/10 PHP
php编程每天必学之表单验证
2016/03/01 PHP
php版微信自定义回复功能示例
2016/12/05 PHP
PHP开发的微信现金红包功能示例
2017/06/29 PHP
PHP PDO数据库操作预处理与注意事项
2019/03/16 PHP
javascript 静态对象和构造函数的使用和公私问题
2010/03/02 Javascript
比Jquery的document.ready更快的方法
2010/04/28 Javascript
jquery 定位input元素的几种方法小结
2013/07/28 Javascript
js文本框输入点回车触发确定兼容IE、FF等
2013/11/19 Javascript
JS中使用apply方法通过不同数量的参数调用函数的方法
2016/05/31 Javascript
折叠菜单及选择器的运用
2017/02/03 Javascript
vue.js利用defineProperty实现数据的双向绑定
2017/04/28 Javascript
基于bootstrap实现多个下拉框同时搜索功能
2017/07/19 Javascript
Bootstrap popover 实现鼠标移入移除显示隐藏功能方法
2018/01/24 Javascript
vue-cli脚手架引入图片的几种方法总结
2018/03/13 Javascript
浅析vue-router原理
2018/10/19 Javascript
详解使用React.memo()来优化函数组件的性能
2019/03/19 Javascript
小程序获取当前位置加搜索附近热门小区及商区的方法
2019/04/08 Javascript
JS简单数组排序操作示例【sort方法】
2019/05/17 Javascript
Vue.js实现备忘录功能
2019/06/26 Javascript
Node.JS用纯JavaScript生成图片或滑块式验证码功能
2019/09/12 Javascript
微信小程序实现滑动翻页效果(完整代码)
2019/12/06 Javascript
vue实践---根据不同环境,自动转换请求的url地址操作
2020/09/21 Javascript
Python Property属性的2种用法
2015/06/21 Python
使用Python神器对付12306变态验证码
2016/01/05 Python
python 实现return返回多个值
2019/11/19 Python
Python日志logging模块功能与用法详解
2020/04/09 Python
Python3 pywin32模块安装的详细步骤
2020/05/26 Python
canvas绘图按照contain或者cover方式适配并居中显示
2019/02/18 HTML / CSS
投标承诺书范本
2014/03/27 职场文书
内科护士节演讲稿
2014/09/11 职场文书
资源环境与城乡规划管理专业自荐书
2014/09/26 职场文书
民政局办理协议离婚(范本)
2014/10/25 职场文书
销售2014年度工作总结
2014/12/08 职场文书
女人创业励志语录,句句蕴含能量,激发你的潜能
2019/08/20 职场文书
swagger如何返回map字段注释
2021/07/03 Java/Android