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 相关文章推荐
Banner程序
Oct 09 PHP
让你同时上传 1000 个文件 (二)
Oct 09 PHP
PHP实现Socket服务器的代码
Apr 03 PHP
一步一步学习PHP(1) php开发环境配置
Feb 15 PHP
php tp验证表单与自动填充函数代码
Feb 22 PHP
ubuntu10.04配置 nginx+php-fpm模式的详解
Jun 03 PHP
如何使用php绘制在图片上的正余弦曲线
Jun 08 PHP
PHP无限分类(树形类)
Sep 28 PHP
linux实现php定时执行cron任务详解
Dec 24 PHP
php实现保存submit内容之后禁止刷新
Mar 19 PHP
php实现递归与无限分类的方法
Feb 16 PHP
详解php用static方法的原因
Sep 12 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
yii框架无限极分类的实现方法
2017/04/08 PHP
ThinkPHP框架实现导出excel数据的方法示例【基于PHPExcel】
2018/05/12 PHP
Extjs单独定义各组件的实例代码
2013/06/25 Javascript
js简单实现交换Li的值
2014/05/22 Javascript
js获取UserControl内容为拼html时提供方便
2014/11/02 Javascript
编写高性能Javascript代码的N条建议
2015/10/12 Javascript
基于javascript显示当前时间以及倒计时功能
2016/03/18 Javascript
详解BootStrap中Affix控件的使用及保持布局的美观的方法
2016/07/08 Javascript
jQuery+CSS实现简单切换菜单示例
2016/07/27 Javascript
基于jQuery解决ios10以上版本缩放问题
2017/11/03 jQuery
Node.js应用设置安全的沙箱环境
2018/04/23 Javascript
JS实现获取自定义属性data值的方法示例
2018/12/19 Javascript
Angular2实现的秒表及改良版示例
2019/05/10 Javascript
基于Proxy的小程序状态管理实现
2019/06/14 Javascript
[01:24:34]2014 DOTA2华西杯精英邀请赛5 24 DK VS LGD
2014/05/25 DOTA
python查找目录下指定扩展名的文件实例
2015/04/01 Python
在Python中操作字符串之startswith()方法的使用
2015/05/20 Python
python利用高阶函数实现剪枝函数
2018/03/20 Python
python实现自动发送邮件
2018/06/20 Python
Django项目之Elasticsearch搜索引擎的实例
2019/08/21 Python
使用python实现画AR模型时序图
2019/11/20 Python
Python实现打印实心和空心菱形
2019/11/23 Python
Python内置异常类型全面汇总
2020/05/28 Python
python 基于opencv 实现一个鼠标绘图小程序
2020/12/11 Python
Kate Spade美国官网:纽约新兴时尚品牌,以包包闻名于世
2017/11/09 全球购物
比较基础的php面试题及答案-填空题
2014/04/26 面试题
幼儿园大班教学反思
2014/02/10 职场文书
百年校庆节目主持词
2014/03/27 职场文书
诚信考试标语
2014/06/24 职场文书
以幸福为主题的活动方案
2014/08/22 职场文书
科级干部群众路线教育实践活动个人对照检查材料
2014/09/19 职场文书
2014财务人员自我评价范文
2014/09/21 职场文书
毕业实习自我鉴定范文2014
2014/09/26 职场文书
2014年党支部书记工作总结
2014/12/04 职场文书
2014年反腐倡廉工作总结
2014/12/05 职场文书
2019年个人工作总结范文(3篇)
2019/08/27 职场文书