PHPで日付計算、DateTime::diff などを実行しようと思ったら、どうもできない。 phpversion() してみたら、PHP5.2.13でした。 マニュアルによれば DateTime::diff は 5.3 からなんだそうで・・・orz それはそれで諦めて、何かできることはないのかなーと思っていたところで、こちらもよくある計算、「年齢計算」が目についた。さらに調査すると美しいコードを見た。 (今日の日付-誕生日)/10000の小数点以下切捨て ※法令による年齢計算の重要な事柄を知っていて、さらにいくつかの言語のコードも提示している。 return (int)((20100610 - 19800610)/10000); //php 前日は-1、当日は+0で正しく計算出来ている。(上記例で言えば)年齢は1980-2010で30とすぐにわかる。しかし、その月、その日を経過しているの
![生年月日から年齢を計算する美しいコード | pc.casey.jp](https://cdn-ak-scissors.b.st-hatena.com/image/square/109db34c70c04a03e55ebe38bb1b9235c0de6c67/height=288;version=1;width=512/https%3A%2F%2Fpc.casey.jp%2Fwp%2Fwp-content%2Fuploads%2F2020%2F03%2Fogp-casey.jp-P1000351_s5.jpg)