久しぶりのPHPネタです。
たとえば30日前の日付を取得する場合。
昔のPHPだったら、こんな風に書くかと思います。
<?php $endDate = date("Y-m-d"); $startDate = date("Y-m-d", strtotime($endDate) - 86400 * 30); echo $startDate."\n".$endDate."\n";
ところが最近はDateTimeオブジェクトが支流なようなのでしっかりとDateTimeオブジェクトを使った形で書くと以下のようになります。
<?php $endDate = new \DateTime(); $startDate = clone $endDate; $startDate->sub(new \DateInterval('P30D')); var_dump($startDate->format("Y-m-d H:i:s")); var_dump($endDate->format("Y-m-d H:i:s"));
まあ好きな方で実装すればいいとは思いますが、最近のモダンな感じのフレームワークなら、DateTime使った方がいいのではないでしょうか?
そーいえばDateTimeは糞重いイメージがあったんですが、最近はどうなんでしょうか?知ってる方教えてください。