时时商务社区
标题:
使用php从身份证号中获取一系列线索(星座、生肖、生日等)
[打印本页]
作者:
阿情
时间:
2018-2-14 05:36
本文第一个实例为大家分享了PHP根据身份证号,自动获取对应的星座函数,供大家参考,具体内容如下
= 20) || ($month == 2 && $day = 19) || ($month == 3 && $day 20) || ($month == 4 && $day = 20) || ($month == 5 && $day = 21) || ($month == 6 && $day 21) || ($month == 7 && $day 22) || ($month == 8 && $day = 23) || ($month == 9 && $day = 23) || ($month == 10 && $day 23) || ($month == 11 && $day 22) || ($month == 12 && $day 21) || ($month == 1 && $day
第二个实例:用
php从身份证中提取生日,包括15位和18位身份证:
function getIDCardInfo($IDCard,$format=1){
$result['error']=0;//0:未知错误,1:身份证格式错误,2:无错误
$result['flag']='';//0标示成年,1标示未成年
$result['tdate']='';//生日,格式如:2012-11-15
if(!preg_match("/^(\d{15}$|^\d{18}$|^\d{17}(\d|X|x))$/",$IDCard)){
$result['error']=1;
return $result;
}else{
if(strlen($IDCard)==18)
{
$tyear=intval(substr($IDCard,6,4));
$tmonth=intval(substr($IDCard,10,2));
$tday=intval(substr($IDCard,12,2));
}
elseif(strlen($IDCard)==15)
{
$tyear=intval("19".substr($IDCard,6,2));
$tmonth=intval(substr($IDCard,8,2));
$tday=intval(substr($IDCard,10,2));
}
if($tyear>date("Y")||$tyear12)
{
$flag=0;
}
elseif($tday31)
{
$flag=0;
}else
{
if($format)
{
$tdate=$tyear."-".$tmonth."-".$tday;
}
else
{
$tdate=$tmonth."-".$tday;
}
if((time()-mktime(0,0,0,$tmonth,$tday,$tyear))>18*365*24*60*60)
{
$flag=0;
}
else
{
$flag=1;
}
}
}
$result['error']=2;//0:未知错误,1:身份证格式错误,2:无错误
$result['isAdult']=$flag;//0标示成年,1标示未成年
$result['birthday']=$tdate;//生日日期
return $result;
}
最后一个实例:
php 提取身份证号码中的生日日期以及确定是否成年的一个函数
。可以同时确定15位和18位的身份证,经本人亲测,非常好用,分享函数代码如下:
date("Y")||$tyear){
$flag=;
}elseif($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){
$flag=;
}elseif($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不用正则验证真假身份证
PHP 正则判断中文UTF-8或GBK的思路及具体实现
PHP用星号隐藏部份用户名、身份证、IP、手机号等实例
php身份证号码检查类实例
php提取身份证号码中的生日日期以及验证是否为成年人的函数
php正则表达式验证(邮件地址、Url地址、电话号码、邮政编码)
php用正则判断是否为数字的方法
php验证身份证号码正确性的函数
Ajax和PHP正则表达式验证表单及验证码
php从身份证获取性别和出生年月
PHP 验证身份证是否合法的函数
php正则判断是否为合法身份证号的方法
欢迎光临 时时商务社区 (http://bbs.4435.cn/)
Powered by Discuz! X3.2