通常資料如果有記錄「生日」,最主要的目的我想是想知道這個人的「年紀」吧,所以在此就將利用生日計算出年紀的程式做個筆記以便它日遺忘時利用

//*************************
//透過PHP函式計算出來
//*************************
//生日,或許也可能是從資料庫讀取出
    $birthday = '1983-12-27';

//年紀
    $age = round((time()-strtotime($birthday))/(24*60*60)/365.25,0);

相關函式可參考date(),當然也可以在讀取資料庫時就先算出來如下

-- 直接在讀取資料庫就算出來
-- 假設資料庫結構為
CREATE TABLE `user` (
    `id` char(32) NOT NULL COMMENT '資料識別碼' ,
    `name` char(8) NOT NULL COMMENT '登入密碼',
    `birthday` date NOT NULL COMMENT '生日',
    PRIMARY KEY (`id`)
)

-- 將年紀利用資料庫函式讀取出來
SELECT ROUND( 
    PERIOD_DIFF( 
        DATE_FORMAT( CURDATE( ) , '%Y%m' ) ,
        DATE_FORMAT( user.birthday, '%Y%m' ) 
    ) /12 ) AS age FROM user

相關函式可參考PERIOD_DIFF()的使用方式

低溫烘培 發表在 痞客邦 PIXNET 留言(0) 人氣()