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 相关文章推荐
如何在WIN2K下安装PHP4.04
Oct 09 PHP
mac下使用brew配置环境的步骤分享
May 23 PHP
PHP获取文件绝对路径的代码(上一级目录)
May 29 PHP
apache+php完美解决301重定向的两种方法
Jun 08 PHP
几个有用的php字符串过滤,转换函数代码
May 01 PHP
初识laravel5
Mar 02 PHP
总结PHP删除字符串最后一个字符的三种方法
Aug 30 PHP
微信公众号实现会员卡领取功能
Jun 08 PHP
PHP获取数组中单列值的方法
Jun 10 PHP
PHP中关键字interface和implements详解
Jun 14 PHP
PHP面向对象程序设计重载(overloading)操作详解
Jun 13 PHP
laravel 框架结合关联查询 when()用法分析
Nov 22 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
DC漫画《蝙蝠侠和猫女》图透 猫女怀孕老爷当爹
2020/04/09 欧美动漫
深入phpMyAdmin的安装与配置的详细步骤
2013/05/07 PHP
解析PHP跨站刷票的实现代码
2013/06/18 PHP
php解析json数据实例
2014/08/19 PHP
PHP实现的随机IP函数【国内IP段】
2016/07/20 PHP
jquery ready(fn)事件使用介绍
2013/08/21 Javascript
JavaScript检测弹出窗口是否已经关闭的方法
2015/03/24 Javascript
静态页面实现 include 引入公用代码的示例
2017/09/25 Javascript
分析javascript原型及原型链
2018/03/18 Javascript
swiper在angularjs中使用循环轮播失效的解决方法
2018/09/27 Javascript
微信小程序项目总结之记账小程序功能的实现(包括后端)
2019/08/20 Javascript
ES6 Generator基本使用方法示例
2020/06/06 Javascript
[59:00]OG vs TNC 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
在Django中创建动态视图的教程
2015/07/15 Python
Python面向对象程序设计之继承与多继承用法分析
2018/07/13 Python
Python利用sqlacodegen自动生成ORM实体类示例
2019/06/04 Python
详解使用python绘制混淆矩阵(confusion_matrix)
2019/07/14 Python
Python FFT合成波形的实例
2019/12/04 Python
python tkiner实现 一个小小的图片翻页功能的示例代码
2020/06/24 Python
Python logging模块handlers用法详解
2020/08/14 Python
解决Python3.7.0 SSL低版本导致Pip无法使用问题
2020/09/03 Python
用Python实现职工信息管理系统
2020/12/30 Python
html5 postMessage解决跨域、跨窗口消息传递方案
2016/12/20 HTML / CSS
介绍下java.util.Arrays类
2012/10/16 面试题
公司活动方案范文
2014/03/06 职场文书
大学生村官承诺书
2014/03/28 职场文书
空乘英文求职信
2014/04/13 职场文书
春季防火方案
2014/05/10 职场文书
计算机系统管理员求职信
2014/06/20 职场文书
竞选班长演讲稿500字
2014/08/22 职场文书
小学“向国旗敬礼”网上签名寄语活动总结
2014/09/27 职场文书
2015年植树节活动总结
2015/02/06 职场文书
运动会跳远广播稿
2015/08/19 职场文书
创业计划书之家教中心
2019/09/25 职场文书
python 实现两个变量值进行交换的n种操作
2021/06/02 Python
spring cloud 配置中心native配置方式
2021/09/25 Java/Android