PHP Conference Japan 2024

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 時間戳記

說明

物件導向風格

public DateTimeInterface::getTimestamp(): int
public DateTimeImmutable::getTimestamp(): int
public DateTime::getTimestamp(): int

程序風格

取得 Unix 時間戳記。

參數

此函數沒有參數。

回傳值

返回表示日期的 Unix 時間戳記。

錯誤/例外

如果時間戳記無法表示為 int 整數型態,則會拋出 DateRangeError 例外。在 PHP 8.3.0 之前的版本,會拋出 ValueError 例外。而在 PHP 8.0.0 之前的版本,則會返回 false。即便如此,仍然可以使用 DateTimeInterface::format() 方法,並搭配格式碼 U,以 string 字串型態取得時間戳記。

更新日誌

版本 說明
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

另請參閱

新增筆記

使用者提供的筆記

此頁面沒有使用者提供的筆記。
To Top