>  기사  >  백엔드 개발  >  신분증의 생일을 얻어 성인인지 확인하는 PHP 함수

신분증의 생일을 얻어 성인인지 확인하는 PHP 함수

墨辰丷
墨辰丷원래의
2018-06-07 10:36:392146검색

이 글은 주로 신분증에서 생일을 확인하고 PHP로 성인 여부를 확인하는 기능을 소개하고 있으니 관심 있는 친구들이 참고하시면 좋을 것 같습니다.

php 주민등록번호에서 생일 날짜를 추출하여 성인인지 판별하는 기능입니다. 15자리와 18자리 ID 카드를 동시에 판별할 수 있습니다. 개인 테스트 후 사용하기가 매우 쉽습니다. 공유 기능 코드는 다음과 같습니다.

<?php
//用php从身份证中提取生日,包括位和位身份证
function getIDCardInfo($IDCard){
  $result[&#39;error&#39;]=;//:未知错误,:身份证格式错误,:无错误
  $result[&#39;flag&#39;]=&#39;&#39;;//标示成年,标示未成年
  $result[&#39;tdate&#39;]=&#39;&#39;;//生日,格式如:--
  if(!eregi("^[-]([-a-zA-Z]{}|[-a-zA-Z]{})$",$IDCard)){
    $result[&#39;error&#39;]=;
    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[&#39;error&#39;]=;//:未知错误,:身份证格式错误,:无错误
  $result[&#39;isAdult&#39;]=$flag;//标示成年,标示未成年
  $result[&#39;birthday&#39;]=$tdate;//生日日期
  return $result;
}

사용 방법은 다음과 같습니다.

코드는 다음과 같습니다.

getIDCardInfo(&#39;身份证号码&#39;);

요약: 위 내용은 이 글의 요약입니다. 모든 내용, 모든 분들의 공부에 도움이 되었으면 좋겠습니다.

관련 권장 사항:

MySQL 일반적으로 사용되는 세 가지 유형의 함수

PHP는 배열에서 지정된 열을 가져오는 방법(대소문자)

PHP는 휴대폰 번호를 기반으로 연산자를 결정하는 방법 (사례)

위 내용은 신분증의 생일을 얻어 성인인지 확인하는 PHP 함수의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.