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

PHP 時區設置完全指南:php.ini、date_default_timezone_set、ini_set 三種方式與常用時區表

     編輯:PHP 相關知識

三種設置方式(優先級遞增)

1. php.ini 全局永久生效(推薦服務器有權限時)

date.timezone = "Asia/Shanghai"
; 或
date.timezone = "PRC"
; 或
date.timezone = "Etc/GMT-8"

修改後**重啟 PHP-FPM/Apache/IIS**。

2. 代碼中 date_default_timezone_set() 項目級生效

<?php
// 放在入口文件/配置文件最頂部
date_default_timezone_set('Asia/Shanghai'); // 推薦
date_default_timezone_set('PRC');           // 別名
date_default_timezone_set('Asia/Chongqing');// 同東八區

3. ini_set() 運行時臨時生效

ini_set('date.timezone', 'Asia/Shanghai');
ini_set('date.timezone', 'PRC');

常用時區標識符對照表

標識符地區/含義UTC 偏移
Asia/Shanghai中國大陸標準時間(北京)+08:00
Asia/Chongqing重慶時間+08:00
PRC中華人民共和國(別名)+08:00
Asia/Hong_Kong香港+08:00
Asia/Taipei台灣+08:00
Asia/Singapore新加坡+08:00
Etc/GMT-8POSIX 標準東八區(注意負號)+08:00
UTC協調世界時+00:00

驗證代碼

<?php
date_default_timezone_set('Asia/Shanghai');
echo '當前時間:' . date('Y-m-d H:i:s') . '
'; echo '時區標識:' . date_default_timezone_get() . '
'; echo '時區偏移:' . date('O') . '
'; // +0800

避坑指南

  • 不要寫 date.timezone = "UTC+8"(無效格式)。
  • Windows PHP CLI 同樣讀取 php.ini,定時任務需確保時區正確。
  • 框架配置優先:Laravel config/app.php、ThinkPHP config/app.php、Yii components.formatter.timeZone。
  • 數據庫連接時區:MySQL SET time_zone = '+08:00' 或連接參數 serverTimezone=Asia/Shanghai(JDBC)。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved