日付・時刻の計算
繰り上がり/繰り下がり計算が楽
日付や時刻の加減算は、繰り上がりや繰り下がりの処理が面倒です。 PHP では、関数 strtotime を用いると、楽に計算できます。
strtotime
strtotime は、タイムスタンプ(1970年1月1日0時0分0秒からの経過時間)に加減算してタイムスタンプを返します。
print strtotime("+1 hour",3600); print strtotime("next Sunday");
最初の引数が加減算する日時です。上の例ではプラスですが、マイナスも可能です。 2 つめの引数は、タイムスタンプです。省略した場合は現在の日時のタイムスタンプになります。
タイムスタンプそのままだと分かりにくいので、date 関数で表記を整えます。
print date("Y/m/d H:i:s",strtotime("+1 day"));
引数の設定方法
上の例であげたように、+/-数字、year/month/week/day/hour/minute/second という形式が明解でしょう。
この他、sunday/monday のように曜日を指定したり、april のように月を指定したりすることもできます。 例えば「+1 sunday」とすれば、次の日曜日の日付になります。
2038年問題
32 ビットでタイムスタンプを表記すると、2038年1月途中で最大値に達します。 このため、将来的に困るかもしれません。
Copyright (C) 2003-2018. PHP で WEB 作成 All rights reserved.