Webサイト制作科 - 作品紹介

Webサイト制作科 - 作品紹介

日付関数

日付関数を使った処理

  • 例:月末の日付を表示する
「いつの日付を」「どのような形式で」を指定する
  • 「いつの日付を」を指定できる関数:mktime関数(タイムスタンプ
  • 「どのような形式で」を指定できる関数:date関数(フォーマット文字列)


タイムスタンプ

  • 処理で扱う「いつの日付を」を示す日付や時刻

フォーマット文字列

  • 「2012/08/15」のような日付の表示を指定する

指定値 説明 戻り値の例
Y 年(4桁) 2012
y 年(2桁) 12
m 月(2桁) 04
n 4
d 日(2桁) 09
j 9
g 時(12時間単位) 4
G 時(24時間単位) 16
h 時(12時間単位で2桁) 04
H 時(24時間単位日2桁) 16
i 分(2桁) 06
s 秒(2桁) 46
a 午前または午後(小文字) pm
A 午前または午後(大文字) PM
L うるう年かどうか 1:うるう年 0:うるう年以外
t 月の日数 28から31
U UNIXタイムスタンプ 1335768642
w 曜日(数値) 0:日曜〜6:土曜
W 1年で何週目か 11
z 1年で何日目か 11

月末日を調べる

  • 日付の自動調整機能を使う
mktime関数とdate関数
  • タイムスタンプを取得する関数
  • フォーマットを指定する関数


date関数

  • 指定された日時(タイムスタンプ)に対してフォーマットを指定して日時を作成します
  • 2番めのパラメータに指定するタイムスタンプは省略可能
  • 現在の日時が処理対象になります
<?php
  echo date('Y/m/d H:i:s');
?>





mktime関数

  • タイムスタンプを作成します
  • 6つのパラメータは「時、分、秒、月、日、年」の順です
  • 実際に存在しない「3月0日」のような日付を指定すると、日付の自動調整により「2月の月末日」が処理対象になります
<?php
  echo date('Y/m/d H:i:s', mktime(0, 0, 0, 3, 0,2012));
?>



  • 時・分・秒を表示しない場合
<?php
  echo date('Y/m/d', mktime(0, 0, 0, 3, 0,2012));
?>