(PHP 5, PHP 7, PHP 8)
idate — ローカルな時刻/日付の一部を整数として整形する
指定された引数 timestamp
を、
与えられたフォーマット文字列によりフォーマットし、日付数値を返します。
タイムスタンプが与えられない場合は、現在のローカル時刻が使われます。
つまり、timestamp
はオプションであり、
そのデフォルト値は time() の値です。
関数 date() と異なり、idate()
は format
パラメータ中は一文字しか受け取りません。
format
format 文字 |
説明 |
---|---|
B |
Swatch ビート/インターネット時間 |
d |
月の日 |
h |
時 (12 時間単位) |
H |
時 (24 時間単位) |
i |
分 |
I (大文字の i) |
夏時間の適用中は 1 、
そうでなければ 0 を返す |
L (大文字の l) |
閏年なら 1 、
そうでなければ 0 を返す |
N |
ISO-8601 形式の曜日
(1 は月曜日で、
7 が日曜日) |
o |
ISO-8601 形式の年 (4 桁の数値) |
m |
月数 |
s |
秒 |
t |
現在の月の日数 |
U |
Unix Epoch (January 1 1970 00:00:00 UTC) からの秒数。 これは time() と同じです |
w |
曜日 (日曜日は 0 ) |
W |
ISO-8601 形式。月曜日から始まる年単位の週番号 |
y |
年 (1 桁あるいは 2 桁の数値 - 下の「注意」を確認ください) |
Y |
年 (4 桁) |
z |
年間の通算日 |
Z |
タイムゾーンのオフセット秒数 |
timestamp
オプションのパラメータ timestamp
は、
int 型の Unix タイムスタンプです。
timestamp
が指定されなかったり、null
だった場合のデフォルト値は、
現在の時刻です。言い換えると、デフォルトは
time() の返り値となります。
整数値を返します。
失敗した場合に false
を返します
idate() が返す値の型は常に int であり、 先頭に "0" がくることはありません。そのため、idate() の返す結果が予想より少ない桁数になることもあります。以下の例を参照ください。
すべての日付/時刻関数は、
有効なタイムゾーンが設定されていない場合に E_WARNING
を発生させます。
date_default_timezone_set() も参照ください。
バージョン | 説明 |
---|---|
8.2.0 |
フォーマット文字
N (ISO-8601 形式の曜日) と
o (ISO-8601 形式の年) が追加されました。
|
8.0.0 |
timestamp は、nullable になりました。
|
例1 idate() の例
<?php
$timestamp = strtotime('1st January 2004'); //1072915200
// これは、年を 2 桁で表示します。
// しかし、ここでは年が "0" から始まるので、
// "4" だけが表示されます。
echo idate('y', $timestamp);
?>