• ベストアンサー

年齢の計算方法

みなさん、初めまして。 現在、PHP&MySQLで個人情報を登録できるサイトを 勉強を兼ねて作っています。 そこで、個人情報を閲覧する際に、登録された生年月日 から現在の満年齢を計算し表示できるようにしたい のですが、どうすればうまくできるのでしょうか? 生年月日はDATE型で2000-01-01のように登録されています。 できればロジックだけでなく、具体的なサンプルコード などがあれば大変助かります。 どうか宜しくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • kusukusu
  • ベストアンサー率38% (141/363)
回答No.1

関数化しましょう 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 です。

cartman
質問者

お礼

お礼が遅くなりまして申し訳ありません。 ご丁寧にありがとうございました。 おかげ様で無事解決致しました。 また何かありましたら宜しくお願いします。

関連するQ&A