関数索引
formatDate() 関数は、時刻を任意の形式に変換して表示します。
RFC2822 形式の日付表現が必要な場合には formatDateRFC2822() 関数が便利です。また、W3CDTF 形式の日付表現が必要な場合には formatDateW3CDTF() 関数が便利です。
変換した時刻を指定します。値は 1970/01/01 00:00:00 からの経過時間をミリ秒単位で計測した値で指定してください。
フォーマット指定:下記の表に示されているフォーマット文字を組み合わせて日時形式を指定します。例えば、2008/11/15 (土) といった形式で時刻を表示したい場合には、フォーマット指定には "yyyy/MM/dd (E)" と指定します。
フォーマット指定中のすべてのアルファベット(a-z と A-Z)はすべてフォーマット文字として扱われます。下表に記載されていないアルファベットをフォーマット指定中でシングルクオートで囲まずに直接使用するとエラーとなります。
フォーマット結果の中に任意のアルファベット文字を埋め込みたい場合には、その文字(文字列)をシングルクオートで囲んで指定してください。例えば "yyyy-MM-dd'T'HH:mm:ss.SSSZ" と指定することで、日付と時刻の間に T を1文字挟んだ結果を得ることができます。
フォーマット結果の中にシングルクオート自体を埋め込みたい場合には、シングルクオートを二つ続けて指定してください。例えば "hh 'o''clock' a" という指定をすることで "11 o'clock AM" という形式のフォーマット結果(言語に英語を指定した場合です)を得ることができます。
フォーマット文字 | 意味 | 用例 | 結果 |
---|---|---|---|
G | 西暦/紀元前 | G yyyy/MM/dd | 西暦 2008/11/12 |
y | 年 | yyyy yy | 2008 08 |
M | 月(数字) | yyyy/MM/dd | 2008/12/13 |
MMMM | 月名 | MMMM | 12月 |
w | 年初から X 週め | yyyy/MM/dd (w) | 2009/01/04 (2) |
W | 月始から X 週め | yyyy/MM/dd (W) | 2008/12/13 (2) |
D | 年初から X 日め | yyyy/MM/dd (D) | 2008/02/29 (60) |
d | 日 | yyyy/MM/dd | 2008/02/29 |
F | 日(d)を7で割った値の切り上げ | yyyy/MM/dd (F) | 2009/01/15 (3) |
E | 曜日(省略形) | yyyy/MM/dd (E) | 2008/03/11 (火) |
EEEE | 曜日 | yyyy/MM/dd (EEEE) | 2008/03/11 (火曜日) |
a | 午前/午後 | a hh:mm:ss | 午後 03:17:38 |
H | 時(0-23) | HH:mm:ss | 15:11:22 |
k | 時(1-24) | kk:mm:ss | 15:11:22 |
K | 午前午後別の時(0-11) | a KK:mm:ss | 午前 00:11:22 |
h | 午前午後別の時(1-12) | a hh:mm:ss | 午前 12:11:22 |
m | 分(0-59) | HH:mm:ss | 12:11:22 |
s | 秒(0-59) | HH:mm:ss | 12:11:22 |
S | ミリ秒(0-999) | HH:mm:ss.S | 12:11:22.123 |
z | タイムゾーン(省略形) | HH:mm:ss z | 12:11:22 JST |
zzzz | タイムゾーン | HH:mm:ss zzzz | 12:11:22 日本標準時 |
Z | RFC 822 タイムゾーン | HH:mm:ss Z | 12:11:22 +0900 |
時刻表現に使用するタイムゾーンを指定します。タイムゾーンには下表の「タイムゾーンID」を指定します。例えば、日本時間を指定する場合には「Asia/Tokyo」「JST」「Japan」のいずれかを指定します。
タイムゾーンをタイムゾーンIDで指定すれば、そのタイムゾーンに夏時間が定義されている場合には、その定義に従って夏時間の処理も行われます。夏時間の処理が行なわれるのはフォーマットしようとしている時刻が夏時間の対象となる時期(季節)に該当する場合です。
タイムゾーンは、GMT (世界標準時) からの時差で指定することもできます。その場合は +HHMM または -HHMM 形式で指定します。例えば、日本時間で表示したい場合には +0900 と指定します。
この引数は省略可能です。省略した場合には、サイトに指定されているタイムゾーンを使用してフォーマッティングが行われます。
時刻表示をどの言語で行うかを指定します。例えば、日本語 "ja" を指定すれば曜日の表現は「日曜日」というように、日本語による表現形式になります。また、英語 "en" を指定すれば「Sunday」や「Sun」という英語の形式になります。
この引数には ISO 639 (JIS X 0412 とほぼ同等) に定義されている 2 文字構成の言語コードを指定することができます。下表に特によく使用すると思われるコードを抜粋しました。コードの詳細につきましては ISO 639 を参照してください。
コード | 言語名 | コード | 言語名 | コード | 言語名 |
---|---|---|---|---|---|
ja | 日本語 | en | 英語 | fr | フランス語 |
ru | ロシア語 | zh | 中国語 | th | タイ語 |
de | ドイツ語 | it | イタリア語 | es | スペイン語 |
この引数は省略可能です。省略した場合には、サーバのデフォルト言語(多くの場合は日本語でしょう)が指定されたものとしてフォーマッティングが行われます。
ページの公開開始指定時刻を yyyy/MM/dd (曜日) 形式で表示します。
<body>
......
%formatDate(scheduledStartDate(), "yyyy/MM/dd (E)")%
......
</body>
表示結果は、例えば「2008/12/13 (土)」となります。
タイムゾーンの指定をしていないので、サーバのデフォルトタイムゾーン(多くの場合日本標準時でしょう)が使われています。
ページの公開開始指定時刻を yyyy/MM/dd(曜日)HH:mm:ss zzzz 形式で表示します。
<body>
......
%formatDate(scheduledStartDate(),
"yyyy/MM/dd (E) HH:mm:ss zzzz",
"America/New_York")%
......
</body>
表示結果は、例えば「2008/12/13 (土) 00:15:00 東部標準時」となります。タイムゾーンに米国ニューヨークを指定していますので、時刻は現地時間で表示されます。タイムゾーンの指定に zzzz としているので、タイムゾーン名が表示されています。この指定を z とするとタイムゾーン名の表示は EST といった省略形式になります。
ページの公開開始指定時刻を yyyy/MM/dd(曜日)HH:mm:ss zzzz 形式で表示します。
<body>
......
%formatDate(scheduledStartDate(),
"yyyy/MM/dd (E) HH:mm:ss zzzz",
"America/New_York",
"en")%
......
</body>
表示結果は、例えば「2008/12/13 (Sat) 00:15:00 Eastern Standard Time」となります。タイムゾーンに米国ニューヨークを指定していますので、時刻は現地時間で表示されます。また、言語にも英語 "en" を指定しているので、時刻表示は英語形式となっています。タイムゾーンの指定に zzzz としているので、タイムゾーン名が表示されています。この指定を z とするとタイムゾーン名の表示は EST といった省略形式になります。
ページの公開開始指定時刻を yyyy/MM/dd(曜日)HH:mm:ss Z 形式で表示します。
<body>
......
%formatDate(scheduledStartDate(), "yyyy/MM/dd (E) HH:mm:ss Z")%
......
</body>
表示結果は、例えば「2008/12/13 (土) 14:15:00 +0900」となります。タイムゾーンを省略しているので、日本標準時、正確には WebRelease がインストールされているサーバのデフォルトのタイムゾーンでの時刻表示となっています。タイムゾーンの表現には(大文字の) Z を指定しているので RFC822 形式でタイムゾーンが表示されます。RFC822 形式は {+|-}HHMM 形式という形式をとります。世界標準時(GMT)からの時差を符号付きの HHMM で表現したものです。
現在の時刻を GMT と英語形式で "hh o'clock a" という表現で表示してみます。
<body>
......
%formatDate(currentTime(), "hh 'o''clock' a", "GMT", "en")%
......
</body>
結果は、例えば「09 o'clock PM」となります。「o'clock」 の部分をフォーマット結果にそのまま埋め込むために、フォーマット指定中ではその部分をシングルクオートで囲んでいます。また、その囲まれた内側にあるシングルクオートは2つ続けて指定しています。