PHP如何精确计算从出生年月日至今的年龄,精确到年月日?
- 内容介绍
- 文章标签
- 相关推荐
本文共计223个文字,预计阅读时间需要1分钟。
以下是对伪原创代码的简化修改:
javascriptfunction diffDate(date1, date2) { var dateStart=new Date(date1); if (dateStart > date2) { var temp=date2; date2=date1; date1=temp; } var Y1=dateStart.getFullYear(); var m1=dateStart.getMonth() + 1; var d1=dateStart.getDate();}
function diffDate($date1,$date2){ $datestart= date('Y-m-d',strtotime($date1)); if(strtotime($datestart)>strtotime($date2)){ $tmp=$date2; $date2=$datestart; $datestart=$tmp; } list($Y1,$m1,$d1)=explode('-',$datestart); list($Y2,$m2,$d2)=explode('-',$date2); $Y=$Y2-$Y1; // 1 $m=$m2-$m1; // 0 $d=$d2-$d1; // -11 if($d<0){ $d+=(int)date('t',strtotime("-1 month $date2")); $m=$m--; } if($m<0){ $m+=12; $y=$y--; } if($Y == 0 && $m == 0 && $d != 0){ return $d.'天'; }elseif($Y == 0 && $m != 0 && $d != 0){ return $m.'个月'.$d.'天'; }elseif($Y != 0 && $m == 0 && $d != 0){ return $Y.'年'.$d.'天'; }else{ return $Y.'年'.$m.'个月'.$d.'天'; } }要调用的地方格式 注:数据库内的日期存储字段的格式是datetime函数哦
本文共计223个文字,预计阅读时间需要1分钟。
以下是对伪原创代码的简化修改:
javascriptfunction diffDate(date1, date2) { var dateStart=new Date(date1); if (dateStart > date2) { var temp=date2; date2=date1; date1=temp; } var Y1=dateStart.getFullYear(); var m1=dateStart.getMonth() + 1; var d1=dateStart.getDate();}
function diffDate($date1,$date2){ $datestart= date('Y-m-d',strtotime($date1)); if(strtotime($datestart)>strtotime($date2)){ $tmp=$date2; $date2=$datestart; $datestart=$tmp; } list($Y1,$m1,$d1)=explode('-',$datestart); list($Y2,$m2,$d2)=explode('-',$date2); $Y=$Y2-$Y1; // 1 $m=$m2-$m1; // 0 $d=$d2-$d1; // -11 if($d<0){ $d+=(int)date('t',strtotime("-1 month $date2")); $m=$m--; } if($m<0){ $m+=12; $y=$y--; } if($Y == 0 && $m == 0 && $d != 0){ return $d.'天'; }elseif($Y == 0 && $m != 0 && $d != 0){ return $m.'个月'.$d.'天'; }elseif($Y != 0 && $m == 0 && $d != 0){ return $Y.'年'.$d.'天'; }else{ return $Y.'年'.$m.'个月'.$d.'天'; } }要调用的地方格式 注:数据库内的日期存储字段的格式是datetime函数哦

