我面临的一个问题,而使用PHP打印的确切年龄。这个年龄段的年龄正在打印,但是在几个月和几天时间里,它们往往会变成负值。精确计算年龄从MySQL数据库使用PHP
下面是代码的片断和完整的代码here。
$ag = date('Y') - substr($row11['dob'],6);
$mn = date('m') - substr($row11['dob'],3,2);
$dy = date('d') - substr($row11['dob'],0,2);
我面临的一个问题,而使用PHP打印的确切年龄。这个年龄段的年龄正在打印,但是在几个月和几天时间里,它们往往会变成负值。精确计算年龄从MySQL数据库使用PHP
下面是代码的片断和完整的代码here。
$ag = date('Y') - substr($row11['dob'],6);
$mn = date('m') - substr($row11['dob'],3,2);
$dy = date('d') - substr($row11['dob'],0,2);
您的年龄计算方法是不正确的,BCZ从今天的每年出生年份分离是好的,但是当它来到月份和日期,将给予负值,直接分离不会为年龄计算工作。 使用以下代码。
function ageCalculator($dob){
if(!empty($dob)){
$birthdate = new DateTime($dob);
$today = new DateTime('today');
$ag = $birthdate->diff($today)->y;
$mn = $birthdate->diff($today)->m;
$dy = $birthdate->diff($today)->d;
return "$ag Years $mn Months $dy Days";
}else{
return 0;
}
}
$row11 = array('dob'=>'02-01-1995');
echo ageCalculator($row11['dob']);
//OUTPUT
22 Years 9 Months 20 Days
在这里你可以找到file
感谢您的回复。实际上,我们聘请了我们学校的软件开发者,现在他没有回应,我需要在明天显示正确的数据时代。可你到底告诉我,我应该在哪里分配 $ row11 [“DOB”] 会,如果我得到确切的答案是你真好。 –
根据你的要求我在你的文件编辑,只需更换[这](https://drive.google.com/file/d/0B8eh4-Yt9AgvYThYYmlvLWlLV1k/view?usp=sharing)文件到你的,不要忘了将其标记作为感谢的答案 –
束交配:) –
您可以发布您的输出和预期输出? – Ravi