主要考虑到闰年的情况,如果有人出生在2.29,那么不是闰年则过了2.28将算上一岁
- function age($birth) {
- $age = array();
- //$now = date('Ymd');
- $now = "20110228";
- //分解当前日期为年月日
- $nowyear = (int) ($now / 10000);
- $nowmonth = (int) (($now % 10000) / 100);
- $nowday = $now % 100;
-
-
- //分解出生日期为年月日
- $birthyear = (int) ($birth / 10000);
- $birthmonth = (int) (($birth % 10000) / 100);
- $birthday = $birth % 100;
-
- $year = $nowyear - $birthyear;
- if ($birthmonth>$nowmonth){
- $year--;
- }else if($birthmonth==$nowmonth){
- if($birthday==29&&$birthmonth=2){
- /* if($nowyear>3200||($nowyear%3200==0&&$nowyear%172800==0)){
- if($birthday>$nowday){
- $year--;
- }
- }else if($nowyear==3200){
- if (($birthday>$nowday)&&$nowday!=28){
- $year--;
- }
- }else */
- if ($nowyear%400==0||(($nowyear%4==0)&&($nowyear%100!=0))){
- if($birthday>$nowday){
- $year--;
- }
- }
- }
- }
-
- return $year;
-
-
-
-
- }
复制代码
|
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31