
273
15
章
日付と時刻
日付と時刻は Web アプリケーションのいたるところで登場します。ショッピングカートでは、
製品の出荷日を扱います。フォーラムでは、メッセージの投稿時間を管理します。どんな種類の
アプリケーションでもユーザの最後のログインを記録し、「最後のログイン以降に 15 の新しいメッ
セージが投稿されました」などと通知できるようにする必要があります。
プログラムで日付と時刻を適切に取り扱うのは、文字列や数字より複雑です。日付や時刻は 1 つ
の値ではなく値の集合です。例えば、年、月、日、時、分、秒があります。そのため、日付や時刻
の演算は面倒です。単に日付や時刻全体を足したり引いたりするのではなく、構成要素とそれぞれ
に使える値を考慮します。時間は 12(または24)まで、分と秒は 59 までで、月の日数はすべて同
じではありません。
この よ う な負担を軽減 す る た めに、PHP は 特 定の時点に関 す る 全情報をカプ セ ル 化 する
DateTime
クラスを提供しています。このクラスのメソッドを使うと、日付や時刻を好きなフォー
マットで出力したり、2 つの日付を足し引きしたり、時間間隔を扱うことができます。
本書では、時間部分(または日付部分や日時部分)という表現は日、月、年、時、分、秒などの
日時要素のグループを意味し、フォーマットされた時間文字列(またはフォーマットされた日付文
字列など)は、日時部分の特定のグループ(例えば、「2016年10 月 20 日(Thursday, ...