php數(shù)據(jù)庫計(jì)算年齡 php根據(jù)生日計(jì)算年齡

php 統(tǒng)計(jì)年齡段 10-20 20-30, ... ,90以上

假設(shè)你上面給出的數(shù)組為$arr。

成都創(chuàng)新互聯(lián)公司主要從事網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)金門,十年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):13518219792

$t1=0;

$t2=0;

.....

foreach($arr as $v){

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

$t1+=1; //10-20歲的數(shù)量

}

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

$t2+=1; //20-30歲的數(shù)量

}

.... //按照類似寫法繼續(xù)寫

}

希望能幫到你,望采納。

php 計(jì)算年齡

年齡(周歲)的算法是固定的,假設(shè)當(dāng)前年、當(dāng)前月、當(dāng)前日、生年、生月、生日6個整數(shù)變量分別代表當(dāng)前的和出生時的年月日,那么年齡的計(jì)算采用下面兩個步驟:

年齡=(當(dāng)前年-生年) - 1;

IF (當(dāng)前月生月 || 當(dāng)前月=生月 當(dāng)前日生日) 年齡=年齡+1;

在PHP寫的程序,主要是注意變量類型轉(zhuǎn)換,下面的例子程序:

?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";

?

補(bǔ)充:我這個能滿足你的要求,是非常精確的。

求一段計(jì)算當(dāng)前年齡的代碼【PHP】!

樓上這位如果真要求個大概的話,這樣算就復(fù)雜了,直接用date('Ymd')-日期(yyyymmdd)拿起來除就可以了。

如果是要求精確的,其實(shí)樓主的思路已經(jīng)很好了,你把它寫完善一點(diǎn)就行了。

先日-日,差的話找月借,然后月減月,差的話找年借,最后年減年,恩,差不多就這個思路了。

寫了一個,不考慮系統(tǒng)占用,只考慮功能的實(shí)現(xiàn):

?php

$you = 19000228;

$now = date('Ymd');

//$now = 19000501; //這一行是用來測試的

//分解當(dāng)前日期為年月日

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

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

$d = $now%100;

//分解生日為年月日

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

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

$yd = $you%100;

//特殊日期計(jì)算

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

$special=29;

}else{

$special=28;

}

//各月的上個月的天數(shù)

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;

}

//運(yùn)算年齡

if($now=$you){

$days=$d-$yd;

$months=$m-$ym;

$years=$y-$yy;

//顯示年齡

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

}else{

echo "您還沒投胎不能計(jì)算生日..";

}

?

php mysql怎樣根據(jù)數(shù)據(jù)庫表中的出生日期搜索出年齡大于65歲的記錄

不知道你的語句報(bào)什么錯,我認(rèn)為你不應(yīng)該使用right來取日期里面的你、月、日,應(yīng)該使用YEAR、MONTH、DAY函數(shù)

另外,你不能使用SELECT后面的別名作為WHERE的條件,必須使用數(shù)據(jù)庫表的字段作為條件,你要獲取65歲以上的可以使用這樣:

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

本文標(biāo)題:php數(shù)據(jù)庫計(jì)算年齡 php根據(jù)生日計(jì)算年齡
URL標(biāo)題:http://muchs.cn/article24/dogisje.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、用戶體驗(yàn)、建站公司、App開發(fā)、全網(wǎng)營銷推廣網(wǎng)站排名

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化