php怎么获取身份证上的年龄?
Admin 2021-05-18 群英技术资讯 1616 次浏览
我们在做开发的时候,有一些需求需要我们根据身份来获取年龄,那么这要如何实现呢?下面小编就给大家分享一下php身份证获取年龄的代码,感兴趣朋友可以参考。
实现
代码中已有详细注释。
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相关内容可以关注其他文章。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
PHP MySQL分表思路,一张一亿的订单表,可以分成五张表,这样每张表就只有两千万数据,分担了原来一张表的压力,分表需要根据某个条件进行分,这里可以根据地区来分表,需要一个中间件来控制到底是去哪张表去找到自...
在本篇文章里小编给大家分享了关于PHP中的public,private和protected的简单比较,有需要的朋友们学习下。
今天继续开始算法练习系列内容~本文的中心的问题“编写一个PHP程序,从给定的整数数组中创建新数组,将所有偶数移到所有奇数之前”。
这篇文章主要介绍了PHP获取访问设备信息的方法,结合实例形式分析了php针对访问设备的浏览器类型、浏览器语言、操作系统类型、访客IP、访客地址等相关函数封装与使用技巧,需要的朋友可以参考下
本文实例讲述了PHP与Web页面交互操作。分享给大家供大家参考,具体如下:
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008