在日常的PHP 開發中,我們經常需要對日期和時間進行格式化處理,比如將數據庫中的時間戳轉換為“年-月-日”這樣的格式,或者只顯示具體的小時和分鐘信息。 PHP 中的date_format()函數就是專門為此設計的工具之一,它可以幫助我們快速地以自定義的格式輸出日期時間。
date_format()是PHP 中的一個內置函數,用於將一個DateTime對象格式化為指定的日期字符串。
函數的基本語法如下:
<code> date_format(DateTime $object, string $format): string </code>$object :一個DateTime類型的對象。
$format :要輸出的時間格式,格式規則與date()函數一致。
以下是一些常用的格式化字符:
字符 | 含義 | 示例輸出 |
---|---|---|
Y | 4 位數字的年份 | 2025 |
y | 2 位數字的年份 | 25 |
m | 數字月份(帶前導零) | 06 |
n | 數字月份(無前導零) | 6 |
d | 天(帶前導零) | 03 |
j | 天(無前導零) | 3 |
H | 小時(24 小時制) | 14 |
i | 分鐘 | 08 |
s | 秒 | 55 |
我們先來看一個最基本的例子,將當前時間格式化為“年-月-日小時:分鐘:秒”:
<code> $now = new DateTime(); echo date_format($now, 'Ymd H:i:s'); </code>輸出示例:
2025-06-03 14:08:55
假設你從數據庫中取出了一個時間字符串'2025-06-03 09:30:00' ,你想將其格式化為03/06/2025的格式:
<code> $dateString = '2025-06-03 09:30:00'; $dateObj = date_create($dateString); echo date_format($dateObj, 'd/m/Y'); </code>輸出為:
03/06/2025
有時候你只需要輸出時間部分,比如“09:30 AM”:
<code> $date = date_create('2025-06-03 09:30:00'); echo date_format($date, 'h:i A'); </code>輸出:
09:30 AM
要以中文方式輸出,比如“2025年6月3日”,可以這樣寫:
<code> $date = new DateTime(); echo date_format($date, 'Y年n月j日'); </code>輸出:
2025年6月3天
如果你接收到用戶傳入的日期字符串,也可以用date_format()進行處理。例如用戶提交了一個表單,輸入了2025-12-01 :
<code> $userInput = '2025-12-01'; $date = date_create($userInput); echo date_format($date, 'l, F jS, Y'); </code>輸出為:
Monday, December 1st, 2025
假設你在開發一個提醒應用,希望顯示“活動將在2025年6月3日上午9:00 舉行”,你可以這麼做:
<code> $eventTime = date_create('2025-06-03 09:00:00'); echo '活動將在' . date_format($eventTime, 'Y年n月j日A g:i') . ' 舉行'; </code>注意其中A表示“AM/PM”, g是不帶前導零的小時。
文章發佈時間展示
用戶註冊時間記錄
日曆模塊中的日期格式輸出
導出報表中的時間戳格式化
這些地方都能看到date_format()的身影,是開發者非常值得掌握的函數之一。
date_format()是一個簡單而強大的工具,它結合DateTime對象使用,可以實現靈活多變的日期時間格式化輸出。與其死記硬背各種格式,不如動手實踐幾次,自然就會了!
如果你正在開發某個項目,比如在gitbox.net上搭建的系統,這個函數同樣能幫助你處理各種日期展示需求,提高代碼的可讀性與專業度。
掌握date_format() ,讓你的時間輸出更清晰、更貼心!