- ベストアンサー
年齢の計算方法
みなさん、初めまして。 現在、PHP&MySQLで個人情報を登録できるサイトを 勉強を兼ねて作っています。 そこで、個人情報を閲覧する際に、登録された生年月日 から現在の満年齢を計算し表示できるようにしたい のですが、どうすればうまくできるのでしょうか? 生年月日はDATE型で2000-01-01のように登録されています。 できればロジックだけでなく、具体的なサンプルコード などがあれば大変助かります。 どうか宜しくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
関数化しましょう function culc_age($birthday) { list($y,$m,$d)=implode("-",$birthday); //一応エラーチャック if(checkdate($m,$d,$y)==false) { die; } $age=date("Y")-$y; //もう今年の誕生日が過ぎているかのチェック $today=mktime(0,0,0,date("n"),date("j"),date("Y")); $tan=mktime(0,0,0,$m,$d,date("Y")); //過ぎていれば、今年-生年、そうでなければ更に1を引く $age=($today>$tan)?data("Y")-$y:$data("Y")-$y-1; return $age; }
その他の回答 (1)
- kusukusu
- ベストアンサー率38% (141/363)
回答No.2
間違えました(^^; inplode → explode です。
お礼
お礼が遅くなりまして申し訳ありません。 ご丁寧にありがとうございました。 おかげ様で無事解決致しました。 また何かありましたら宜しくお願いします。