php数据库计算年龄 php根据生日计算年龄

php 统计年龄段 10-20 20-30, ... ,90以上

假设你上面给出的数组为$arr。

成都创新互联公司主要从事网站设计、成都网站制作、网页设计、企业做网站、公司建网站等业务。立足成都服务金门,十年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792

$t1=0;

$t2=0;

.....

foreach($arr as $v){

if($v['age']=10||$v['age']=20){

$t1+=1; //10-20岁的数量

}

if($v['age']20||$v['age']=30){

$t2+=1; //20-30岁的数量

}

.... //按照类似写法继续写

}

希望能帮到你,望采纳。

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】!

楼上这位如果真要求个大概的话,这样算就复杂了,直接用date('Ymd')-日期(yyyymmdd)拿起来除就可以了。

如果是要求精确的,其实楼主的思路已经很好了,你把它写完善一点就行了。

先日-日,差的话找月借,然后月减月,差的话找年借,最后年减年,恩,差不多就这个思路了。

写了一个,不考虑系统占用,只考虑功能的实现:

?php

$you = 19000228;

$now = date('Ymd');

//$now = 19000501; //这一行是用来测试的

//分解当前日期为年月日

$y = (int)($now/10000);

$m = (int)(($now%10000)/100);

$d = $now%100;

//分解生日为年月日

$yy = (int)($you/10000);

$ym = (int)(($you%10000)/100);

$yd = $you%100;

//特殊日期计算

if($years%4==0 || ($years%100==0$years%400==0)){

$special=29;

}else{

$special=28;

}

//各月的上个月的天数

switch($m){

case 2:$add=31;

case 3:$add=31;

case 6:$add=31;

case 8:$add=31;

case 9:$add=31;

case 11:$add=31;

case 1:$add=31;

case 5:$add=30;

case 7:$add=30;

case 10:$add=30;

case 12:$add=30;

case 3:$add=$special;

}

if($d$yd){

$d+=$add;

$m-=1;

}

if($m$ym){

$m+=12;

$y-=1;

}

//运算年龄

if($now=$you){

$days=$d-$yd;

$months=$m-$ym;

$years=$y-$yy;

//显示年龄

echo $years."岁".$months."月".$days."天";

}else{

echo "您还没投胎不能计算生日..";

}

?

php mysql怎样根据数据库表中的出生日期搜索出年龄大于65岁的记录

不知道你的语句报什么错,我认为你不应该使用right来取日期里面的你、月、日,应该使用YEAR、MONTH、DAY函数

另外,你不能使用SELECT后面的别名作为WHERE的条件,必须使用数据库表的字段作为条件,你要获取65岁以上的可以使用这样:

WHERE csrqMAKEDATE(YEAR(NOW())-65, DAYOFYEAR(NOW()))


网站标题:php数据库计算年龄 php根据生日计算年龄
标题链接:http://scyanting.com/article/dogisje.html