分享

php根据生日计算年龄的两种方法

 流楚丶格念 2022-01-14

文章目录

方法一:strtotime( )


function birthday($birthday){
    $age = strtotime($birthday);
    if ($age === false) {
        // 传入为空返回假
        return false;
    }
    // explode : 把字符打散成数组  
    // 将生日年月日打到一个数组中
    list($y1,$m1,$d1) = explode("-", date("Y-m-d",$age));
    $now = strtotime("now");
    list($y2,$m2,$d2) = explode("-",date("Y-m-d",$now)); 
    $age = $y2 - $y1;
    // 如果现在的月份日期小于生日的   那么就是未满一周岁   age—1
    if((int)($m2.$d2) < (int)($m1.$d1)) 
        $age -= 1; 
    return $age; 
}
echo birthday('2000-07-22'); 

方法二:date( )

简便一点:

function birthday($birthday){
    list($year,$month,$day)=explode("-", $birthday);
    // date() 函数 里面填 Y。。。。  直接转化当前时间
    $year_diff = date("Y") - $year;
    $month_diff = date("m") - $month;
    $day_diff = date("d") - $day;
    if ($day_diff < 0 || $month_diff < 0)
        $year_diff--;
    return $year_diff;
}
echo birthday("2000-01-25");

都没问题的啦 不展示截图了

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约