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 相关文章推荐
ADODB的数据库封包程序库
Dec 31 PHP
深入php-fpm的两种进程管理模式详解
Jun 03 PHP
深入PHP运行环境配置的详解
Jun 04 PHP
完美解决:Apache启动问题―(OS 10022)提供了一个无效的参数
Jun 08 PHP
PHP实现微信公众平台音乐点播
Mar 20 PHP
ThinkPHP处理Ajax返回的方法
Nov 22 PHP
在Nginx上部署ThinkPHP项目教程
Feb 02 PHP
在Windows系统下使用PHP生成Word文档的教程
Jul 03 PHP
PHP实现的折半查询算法示例
Oct 09 PHP
实例解析php的数据类型
Oct 24 PHP
thinkphp3.2同时连接两个数据库的简单方法
Aug 13 PHP
Laravel validate error处理,ajax,json示例
Oct 25 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
也谈 PHP 和 MYSQL
2006/10/09 PHP
PHP session常见问题集锦及解决办法总结
2007/03/18 PHP
php实现根据身份证获取精准年龄
2020/02/26 PHP
javascript的函数
2007/01/31 Javascript
JavaScript面向对象之Prototypes和继承
2012/07/12 Javascript
jquery实现弹出div,始终显示在屏幕正中间的简单实例
2014/03/08 Javascript
javascript进行数组追加方法小结
2014/06/16 Javascript
JavaScript从数组的indexOf()深入之Object的Property机制
2016/05/11 Javascript
mvvm双向绑定机制的原理和实现代码(推荐)
2016/06/07 Javascript
JS上传图片预览插件制作(兼容到IE6)
2016/08/07 Javascript
详解jQuery中基本的动画方法
2016/12/14 Javascript
纯JS实现弹性导航条效果
2017/03/06 Javascript
Vue实现自带的过滤器实例
2017/03/09 Javascript
JS将unicode码转中文方法
2017/05/08 Javascript
JavaScript在控件上添加倒计时功能的实现代码
2017/07/04 Javascript
AngularJS 实现点击按钮获取验证码功能实例代码
2017/07/13 Javascript
打通前后端构建一个Vue+Express的开发环境
2018/07/17 Javascript
vue2实现搜索结果中的搜索关键字高亮的代码
2018/08/29 Javascript
详解搭建es6+devServer简单开发环境
2018/09/25 Javascript
Vue数据双向绑定的深入探究
2018/11/27 Javascript
部署vue+Springboot前后端分离项目的步骤实现
2020/05/31 Javascript
[49:41]NB vs NAVI Supermajor小组赛A组 BO3 第一场 6.2
2018/06/03 DOTA
Python提取Linux内核源代码的目录结构实现方法
2016/06/24 Python
python使用xlrd与xlwt对excel的读写和格式设定
2017/01/21 Python
python高阶爬虫实战分析
2018/07/29 Python
python中random.randint和random.randrange的区别详解
2020/09/20 Python
Python将list元素转存为CSV文件的实现
2020/11/16 Python
美味咖啡的顶级烘焙师:Cafe Britt
2018/03/15 全球购物
Love, Bonito国际官网:新加坡女装品牌
2021/03/13 全球购物
大一自我鉴定范文
2013/10/04 职场文书
大学生关于奋斗的演讲稿
2014/01/09 职场文书
大学生自助营养快餐店创业计划书
2014/01/13 职场文书
地下停车场租赁协议范本
2014/10/07 职场文书
安全生产学习心得体会
2016/01/18 职场文书
详解Python类和对象内容
2021/06/22 Python
vue elementUI表格控制对应列
2022/04/13 Vue.js