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

PHP 時間日期函式大全:時間戳、格式化、相對運算與效能計時

     編輯:PHP 綜合知識

核心時間戳函式

函式回傳值備註
time()int當前 Unix 時間戳(秒)
microtime(true)float含微秒的高精度時間戳,PHP 5.0+
mktime(h,m,s,mon,day,year)int指定日期轉時間戳,參數可從右省略
strtotime('英文描述')int|false相對/絕對時間字串解析,極強大

格式化輸出:date() 與 DateTime

// 程序式
echo date('Y-m-d H:i:s');           // 2024-05-20 14:30:05
echo date('Y-m-d', strtotime('+1 week')); // 一週後日期

// 物件導向(推薦 PHP 5.3+)
$dt = new DateTime('now', new DateTimeZone('Asia/Taipei'));
echo $dt->format('Y-m-d H:i:s');
$dt->modify('+1 month');
echo $dt->format('Y-m-d');

常用格式字元速查

Y4位年份y2位年份
m月份 01-12n月份 1-12
d日期 01-31j日期 1-31
H24小時 00-23h12小時 01-12
i分鐘 00-59s秒數 00-59
w星期 0(日)-6W年度第幾週

strtotime 相對時間魔法

echo strtotime('+1 day');           // 明天這時
echo strtotime('+1 week');          // 下週同一天
echo strtotime('next Monday');      // 下個週一
echo strtotime('last day of February 2024'); // 2月最後一天
echo strtotime('2024-01-31 +1 month'); // 2024-02-29 (閏年自動處理)

微秒級效能計時範例

PHP 5.1+ 超全域請求時間

// $_SERVER['REQUEST_TIME']      // 整數秒(PHP 5.1+)
// $_SERVER['REQUEST_TIME_FLOAT'] // 浮點數微秒(PHP 5.4+)

時區設定最佳實踐

// php.ini
date.timezone = "Asia/Taipei"

// 或程式中設定(需在所有 date 函式之前)
date_default_timezone_set('Asia/Taipei');

工具推薦

延伸專題

  • 《PHP 日期與時間用法總結》
  • 《PHP 數學運算技巧總結》
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved