DateTimeInterface::getTimestamp
DateTimeImmutable::getTimestamp
DateTime::getTimestamp
date_timestamp_get
(PHP 5 >= 5.3.0, PHP 7, PHP 8)
DateTimeInterface::getTimestamp -- DateTimeImmutable::getTimestamp -- DateTime::getTimestamp -- date_timestamp_get — Unix タイムスタンプを取得する
説明
オブジェクト指向型
手続き型
Unix タイムスタンプを取得します。
パラメータ
この関数にはパラメータはありません。
戻り値
その日付をあらわす Unix タイムスタンプを返します。
エラー / 例外
タイムスタンプが整数として表現できない場合、
DateRangeError がスローされます。
PHP 8.3.0 より前のバージョンでは、ValueError
がスローされていました。また、PHP 8.0.0 より前のバージョンでは同様の場合に
false
を返していました。
さらに、DateTimeInterface::format() に
U
を指定すると、タイムスタンプは文字列として取得できます。
変更履歴
バージョン | 説明 |
---|---|
8.3.0 | 範囲外の例外が DateRangeError になりました。 |
8.0.0 |
これらの関数は、失敗時に false を返さなくなりました。
|
例
例1 DateTime::getTimestamp() の例
オブジェクト指向型
<?php
$date = new DateTimeImmutable();
echo $date->getTimestamp();
?>
手続き型
<?php
$date = date_create();
echo date_timestamp_get($date);
?>
上の例の出力は、 たとえば以下のようになります。
1272509157
ミリ秒やマイクロ秒の精度でタイムスタンプを取得したい場合、 DateTimeInterface::format() が使えます。
例2 ミリ秒とマイクロ秒の精度でタイムスタンプを取得する
オブジェクト指向型
<?php
$date = new DateTimeImmutable();
$milli = (int) $date->format('Uv'); // タイムスタンプをミリ秒で取得
$micro = (int) $date->format('Uu'); // タイムスタンプをマイクロ秒で取得
echo $milli, "\n", $micro, "\n";
?>
上の例の出力は、 たとえば以下のようになります。
1674057635586 1674057635586918
参考
- DateTime::setTimestamp() - Unix タイムスタンプを用いて日付と時刻を設定する
- DateTimeImmutable::setTimestamp() - Unix タイムスタンプを用いて日付と時刻を設定する
- DateTimeInterface::format() - 指定した書式でフォーマットした日付を返す
+add a note
User Contributed Notes
There are no user contributed notes for this page.
↑ and ↓ to navigate •
Enter to select •
Esc to close
Press Enter without
selection to search using Google