~~~ // 通过身份证获取性别 1男 function getSex($idCard) { $sex = (int)substr($idCard, -2, 1); return $sex % 2; } ~~~ ~~~ // 通过身份证获取生日 function getBirthdayByCard($idCard, $type = 'Y-m-d') { $birth_Date = strtotime(substr($idCard, 6, 8)); return date($type, $birth_Date); } ~~~ ~~~ // 通过身份证获取年龄 function getAge($idCard) { $birth_Date = strtotime(substr($idCard, 6, 8)); // 截取日期并转为时间戳 $Year = date('Y', $birth_Date); // yyyy $Month = date('m', $birth_Date); // mm $Day = date('d', $birth_Date); // dd $current_Y = date('Y'); // yyyy $current_M = date('m'); // mm $current_D = date('d'); // dd $age = $current_Y - $Year; // 今年减去生日年 if($Month > $current_M || $Month == $current_M && $Day > $current_D){ $age--; // 如果出生月大于当前月或出生月等于当前月但出生日大于当前日则减一岁 } return $age; } ~~~