很多站长朋友们都不太清楚php根据生日计算年龄,今天小编就来给大家整理php根据生日计算年龄,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 thinkphp5 生日换算年龄的问题 2、 如何用php根据出生日期计算年龄和星座 3、 php输入出生日期,计算出年龄和出生日是星期几 4、 php 计算年龄 thinkphp5 生日换算年龄的问题function birthday($birthday){
$age = strtotime($birthday);
if($age === false){
return false;
}
list($y1,$m1,$d1) = explode("-",date("Y-m-d",$age));
$now = strtotime("now");
list($y2,$m2,$d2) = explode("-",date("Y-m-d",$now));
$age = $y2 - $y1;
if((int)($m2.$d2) < (int)($m1.$d1))
$age -= 1;
return $age;
}
echo birthday('1995-01-26');
如何用php根据出生日期计算年龄和星座<?php
function calcAge($birthday) {
$age = 0;
$signs = array( array('20' => '宝瓶座'), array('19' => '双鱼座'), array('21' => '白羊座'), array('20' => '金牛座'), array('21' => '双子座'), array('22' => '巨蟹座'), array('23' => '狮子座'), array('23' => '处女座'), array('23' => '天秤座'), array('24' => '天蝎座'), array('22' => '射手座'), array('22' => '摩羯座'));
if (!empty($birthday)) {
$age = strtotime($birthday);
if ($age === false) {
return 0;
}
list($y1, $m1, $d1) = explode("-", date("Y-m-d", $age));
list($y2, $m2, $d2) = explode("-", date("Y-m-d"), time());
$age = $y2 - $y1;
//下面是判断月份大小,如果只是逄年份的可以去掉,如果算上月份的话,比如:2000年4月1日,那算出来是16算,要到了4月,算出来才是17岁
if ((int)($m2 . $d2) < (int)($m1 . $d1)) {
$age -= 1;
}
//星座
$key = (int)$m1 - 1;
list($startSign, $signName) = each($signs[$key]);
if ($d1 < $startSign) {
$key = $m1 - 2 < 0 ? $m1 = 11 : $m1 -= 2;
list($startSign, $signName) = each($signs[$key]);
}
//return $signName;
}
return $age.$signName;
}
echo calcAge("2011-4-31");
?>
php输入出生日期,计算出年龄和出生日是星期几首先把生日和现在的日期统一格式,年龄就是现在年减生日年,把生日传到系统函数中去,就可以返回星期几,最后把他们拼接在一起。
php 计算年龄年龄(周岁)的算法是固定的,假设当前年、当前月、当前日、生年、生月、生日6个整数变量分别代表当前的和出生时的年月日,那么年龄的计算采用下面两个步骤:
年龄=(当前年-生年) - 1;
IF (当前月>生月 || 当前月=生月 当前日>生日) 年龄=年龄+1;
在PHP写的程序,主要是注意变量类型转换,下面的例子程序:
<?php
$birth='1972-9-18';
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++;
echo "生日:$birth\n年龄:$age\n";
?>
补充:我这个能满足你的要求,是非常精确的。
关于php根据生日计算年龄的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php根据生日计算年龄 php计算出生天数的详细内容...