php提取身份证号码中的生日日期以及验证是否为成年人的函数


Posted in PHP onSeptember 29, 2015

php 提取身份证号码中的生日日期以及确定是否成年的一个函数。可以同时确定15位和18位的身份证,经本人亲测,非常好用,分享函数代码如下:

<?php
//用php从身份证中提取生日,包括位和位身份证
function getIDCardInfo($IDCard){
  $result['error']=;//:未知错误,:身份证格式错误,:无错误
  $result['flag']='';//标示成年,标示未成年
  $result['tdate']='';//生日,格式如:--
  if(!eregi("^[-]([-a-zA-Z]{}|[-a-zA-Z]{})$",$IDCard)){
    $result['error']=;
    return $result;
  }else{
    if(strlen($IDCard)==){
      $tyear=intval(substr($IDCard,,));
      $tmonth=intval(substr($IDCard,,));
      $tday=intval(substr($IDCard,,));
      if($tyear>date("Y")||$tyear<(date("Y")-)){
        $flag=;
      }elseif($tmonth<||$tmonth>){
        $flag=;
      }elseif($tday<||$tday>){
        $flag=;
      }else{
        $tdate=$tyear."-".$tmonth."-".$tday." ::";
        if((time()-mktime(,,,$tmonth,$tday,$tyear))>****){
          $flag=;
        }else{
          $flag=;
        }
      }
    }elseif(strlen($IDCard)==){
      $tyear=intval("".substr($IDCard,,));
      $tmonth=intval(substr($IDCard,,));
      $tday=intval(substr($IDCard,,));
      if($tyear>date("Y")||$tyear<(date("Y")-)){
        $flag=;
      }elseif($tmonth<||$tmonth>){
        $flag=;
      }elseif($tday<||$tday>){
        $flag=;
      }else{
        $tdate=$tyear."-".$tmonth."-".$tday." ::";
        if((time()-mktime(,,,$tmonth,$tday,$tyear))>****){
          $flag=;
        }else{
          $flag=;
        }
      }
    }
  }
  $result['error']=;//:未知错误,:身份证格式错误,:无错误
  $result['isAdult']=$flag;//标示成年,标示未成年
  $result['birthday']=$tdate;//生日日期
  return $result;
}

用法如下:

getIDCardInfo('身份证号码');

以上代码就是小编跟大家分享的php提取身份证号码中的生日日期以及验证是否为成年人的函数,希望对大家有用。

PHP 相关文章推荐
一个阿拉伯数字转中文数字的函数
Oct 09 PHP
建立动态的WML站点(二)
Oct 09 PHP
亲密接触PHP之PHP语法学习笔记1
Dec 17 PHP
php array_search() 函数使用
Apr 13 PHP
php购物车实现代码
Oct 10 PHP
PHP中的生成XML文件的4种方法分享
Oct 06 PHP
深入解析yii权限分级式访问控制的实现(非RBAC法)
Jun 13 PHP
PHP+mysql+ajax轻量级聊天室实现方法详解
Oct 17 PHP
php修改数组键名的方法示例
Apr 15 PHP
PHP getID3类的使用方法学习笔记【附getID3源码下载】
Oct 18 PHP
如何在centos8自定义目录安装php7.3
Nov 28 PHP
Thinkphp框架使用list_to_tree 实现无限级分类列出所有节点示例
Apr 04 PHP
PHP类的封装与继承详解
Sep 29 #PHP
PHP比较运算符的详细介绍
Sep 29 #PHP
php提高网站效率的技巧
Sep 29 #PHP
四个PHP非常实用的功能
Sep 29 #PHP
PHP实现二叉树的深度优先与广度优先遍历方法
Sep 28 #PHP
PHP+AJAX实现投票功能的方法
Sep 28 #PHP
WIFI万能钥匙密码查询接口实例
Sep 28 #PHP
You might like
dede3.1分页文字采集过滤规则详说(图文教程)续二
2007/04/03 PHP
PHP 组件化编程技巧
2009/06/06 PHP
PHP中获取时间的下一周下个月的方法
2014/03/18 PHP
php写一个函数,实现扫描并打印出自定目录下(含子目录)所有jpg文件名
2017/05/26 PHP
PHP filesize函数用法浅析
2019/02/15 PHP
php 下 html5 XHR2 + FormData + File API 上传文件操作实例分析
2020/02/28 PHP
可以显示单图片,多图片ajax请求的ThickBox3.1类下载
2007/12/23 Javascript
firebug的一个有趣现象介绍
2011/11/30 Javascript
jquery实现邮箱自动补全功能示例分享
2014/02/17 Javascript
jQuery实现在textarea指定位置插入字符或表情的方法
2015/03/11 Javascript
jquery实现页面虚拟键盘特效
2015/08/08 Javascript
jqueryMobile使用示例分享
2016/01/12 Javascript
前端学习笔记style,currentStyle,getComputedStyle的用法与区别
2016/05/28 Javascript
BootstrapTable+KnockoutJS自定义T4模板快速生成增删改查页面
2016/08/01 Javascript
实例解析Array和String方法
2016/12/14 Javascript
JavaScript数组排序reverse()和sort()方法详解
2017/12/24 Javascript
Element-ui树形控件el-tree自定义增删改和局部刷新及懒加载操作
2020/08/31 Javascript
在Python中调用ggplot的三种方法
2015/04/08 Python
Python入门学习指南分享
2018/04/11 Python
python实现京东秒杀功能
2018/07/30 Python
Python实现的批量修改文件后缀名操作示例
2018/12/07 Python
windows10下安装TensorFlow Object Detection API的步骤
2019/06/13 Python
python安装scipy的方法步骤
2019/06/26 Python
Grow Gorgeous美国官网:只要八天,体验唤醒毛囊后新生的茂密秀发
2018/06/04 全球购物
C++:局部变量能否和全局变量重名
2014/03/03 面试题
自我鉴定范文200字
2013/10/02 职场文书
中专毕业自我鉴定
2013/10/16 职场文书
财务管理职业生涯规划范文
2013/12/27 职场文书
简历上的自我评价
2014/02/03 职场文书
献爱心活动总结
2014/05/07 职场文书
四风自我剖析材料思想汇报
2014/10/01 职场文书
2015暑假打工实践报告
2015/07/13 职场文书
职工宿舍管理制度
2015/08/05 职场文书
2019个人工作态度自我评价
2019/04/24 职场文书
nginx常用命令放入shell脚本详解
2021/03/31 Servers
详解MySql中InnoDB存储引擎中的各种锁
2022/02/12 MySQL