先分别取得出生年、月、日
再取得当前年、月、日。
年份相减,再比较月、日。
/** * 根据出生日期计算年龄 * @param string $birth 要计算的出生日期(格式:1970-1-1) * @return int */ function getBirthAge($birth){ if ($birth) { list($by, $bm, $bd) = explode('-', $birth); $cm = date('n'); $cd = date('j'); $age = date('Y') - $by - 1; if ($cm > $bm || $cm == $bm && $cd > $bd) $age++; return $age; } }