首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

PHP date() 函數完全指南:日期時間格式化詳解

     編輯:PHP 相關知識

前言

PHP 的 date() 函數是處理日期時間格式化的核心工具。本文系統整理了常用格式字符的含義、輸出示例及注意事項,幫助開發者快速掌握日期時間顯示技巧。

年、月、日格式化

格式字符說明示例輸出
Y四位數年份2007
y兩位數年份07
m月份,帶前導零02
n月份,不帶前導零2
F月份英文全稱February
M月份三字母縮寫Feb
d月份中的第幾天,帶前導零06
j月份中的第幾天,不帶前導零6
S日期序數後綴(st, nd, rd, th)th

組合示例:

  • date('Y-m-d') → 2007-02-06(標準 ISO 日期格式)
  • date('Y-F-jS') → 2007-February-6th(長格式)
  • date('y-n-j') → 07-2-6(精簡格式)

時、分、秒格式化

格式字符說明示例輸出
g12 小時制,不帶前導零5
h12 小時制,帶前導零05
G24 小時制,不帶前導零14
H24 小時制,帶前導零14
i分鐘,帶前導零56
s秒,帶前導零57
a小寫 am/pmam
A大寫 AM/PMAM

關鍵提醒: PHP 預設使用「格林威治標準時間」(GMT/UTC),與中國標準時間(CST,UTC+8)相差 8 小時。生產環境務必在 php.ini 設置 date.timezone = Asia/Shanghai 或代碼中調用 date_default_timezone_set('Asia/Shanghai')。

組合示例:

  • date('g:i:s a') → 5:56:57 am
  • date('H:i:s') → 14:02:26

閏年、星期、天數相關

格式字符說明示例輸出
L是否閏年(1=是,0=否)0
l星期幾英文全稱Tuesday
D星期幾三字母縮寫Tue
w星期幾數字(0=週日,6=週六)2
W年中的第幾週(ISO-8601)06
t當月總天數28
z年中的第幾天(0-365)36

其他常用格式字符

格式字符說明示例輸出
T服務器時區設置UTC
I是否夏令時(1=是,0=否)0
UUnix 時間戳(自 1970-01-01 秒數)1170769424
cISO 8601 格式2007-02-06T14:24:43+00:00
rRFC 2822 格式Tue, 06 Feb 2007 14:25:52 +0000

最佳實踐建議

  1. 時區優先:項目啟動時統一設置時區,避免跨服務器部署時出現時間偏差。
  2. 格式常量化:將常用格式定義為常量(如 define('DATE_FMT', 'Y-m-d H:i:s')),便於維護。
  3. 考慮 DateTime 類:PHP 5.2+ 提供的 DateTime 類功能更強大(時區轉換、日期運算、不可變對象),複雜場景優先使用。
  4. 避免在循環中重複調用:若需批量格式化,先獲取時間戳再統一格式化,減少系統調用開銷。

總結

date() 函數雖然參數眾多,但掌握核心字符分類(年月日、時分秒、星期天數、標準格式)即可應對 90% 場景。配合正確的時區設置,能夠可靠地生成各種業務所需的日期時間字符串。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved