• ベストアンサー

日付処理について

いつもお世話になってます。 環境はPHP5のMYSQLです。 DBに持っている登録日付から、ライセンスの期限を チェックするようなロジックを書きたいのですが 例えば変数や定数に「1」を与えたらDBの登録日から 1週間後、「2」なら2週間後のタイムスタンプを算出 するようなことは出来ますか? それから週単位ではなく、月単位や年単位など。 DBの日付は、タイムスタンプで持っています。 説明がちょっとうまくないので、足りないところは ご指摘頂ければ、補足します。 宜しくお願いします。

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

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

MYSQL側でINTERVALをつかってできる処理もありますし 受け取ったデータにたいしてstrtotime()して経過期間を足しこむこともできます。 ただし、月単位というはあいまいな定義です。 2/28の1か月後は3/28でしょうか?3/31でしょうか? 逆に3/31の1か月前は2/28でしょうか3/2でしょうか? そういう基本が理解できてないとかなり苦労すると思います。 またDB側でデータはタイムスタンプでもっているとのことですが datetime型の方がよくないですか?

TOBBYS
質問者

お礼

yambejpさん やっぱりstrtotime()を使うんですね! 近いような答えは出ていたのですが なんとか解決出来そうです^^ 月単位は閏年やらもあるし、ちょっと考慮 しなきゃならなそうなので、タイムスタンプから 差を算出して比較しようと思います。 ちなみにDB側は、datetime型でした。 色々、ありがとうございました。

関連するQ&A