2024 年日本 PHP 研討會

idate

(PHP 5, PHP 7, PHP 8)

idate將本地時間/日期部分格式化為整數

說明

idate(字串 $format, ?整數 $timestamp = null): 整數|false

根據給定的格式字串,使用指定的整數 timestamp 或目前本地時間(如果未提供時間戳)來格式化並返回一個數字。換句話說,timestamp 是可選的,預設值為 time() 的返回值。

date() 函式不同,idate() 只接受 format 參數中的一個字元。

參數

format

format 參數字串中可辨識的字元如下:
format 字元 說明
B Swatch Beat/網路時間
d 月份中的日期
h 小時(12 小時制)
H 小時(24 小時制)
i 分鐘
I(大寫 i) 如果啟用日光節約時間,則返回 1,否則返回 0
L(大寫 l) 閏年返回 1,否則返回 0
m 月份數字
N ISO-8601 格式的星期幾(1 代表星期一,7 代表星期日)
o ISO-8601 格式的年份(4 位數)
s 秒數
t 目前月份的天數
U 自 Unix 紀元(1970 年 1 月 1 日 00:00:00 UTC)以來的秒數 - 這與 time() 相同
w 星期幾(星期日為 0
W 一年中的 ISO-8601 格式的週數,星期一為一週的開始
y 年份(1 或 2 位數 - 請參考以下注意事項)
Y 年份(4 位數)
z 一年中的第幾天
Z 時區偏移量(以秒為單位)

timestamp

可選的 timestamp 參數是一個 int 類型的 Unix 時間戳,如果省略 timestamp 或其值為 null,則預設為目前的本地時間。換句話說,它預設為 time() 的返回值。

返回值

成功時返回一個 int 值,失敗時返回 false

由於 idate() 總是返回一個 int 值,而且整數不能以 "0" 開頭,因此 idate() 返回的位數可能比預期少。請參考以下範例。

錯誤/異常

如果時區無效,每次呼叫日期/時間函式都會產生 E_WARNING 錯誤。另請參閱 date_default_timezone_set()

更新日誌

版本 說明
8.2.0 新增了 N(ISO-8601 格式的星期幾)和 o(ISO-8601 格式的年份)格式字元。
8.0.0 timestamp 現在可以為 null。

範例

範例 #1 idate() 範例

<?php
$timestamp
= strtotime('1st January 2004'); //1072915200

// 這個會以兩位數格式印出年份
// 然而,因為會以 "0" 開頭,所以
// 只會印出 "4"
echo idate('y', $timestamp);
?>

另請參閱

新增筆記

使用者貢獻的筆記

此頁面沒有使用者貢獻的筆記。
To Top