1. 程式人生 > >【PHP】php時間戳轉化成時間相差8小時問題?關於時區設定-date_default_timezone_set()

【PHP】php時間戳轉化成時間相差8小時問題?關於時區設定-date_default_timezone_set()

問題:
CMS系統配置帶時間的資料,解析“時間日期”轉換成時間戳(s),再轉換時間格式,發現差8小時。
如圖:(編輯CMS後臺配置)
這裡寫圖片描述
程式介面輸出:(轉換時間戳)

這裡寫圖片描述
明顯看出,相差8個小時。

解決:

// 程式轉換時間戳前 增加時區設定
date_default_timezone_set("PRC");

TIPS:

  1. 中國時區設定方式(推薦):主要以下4種(當然也可以設
    Asia/Hong_Kong – 香港
    Asia/Macao – 澳門
    Asia/Taipei – 臺北 )

    1. //”Asia/Shanghai”為“亞洲/上海”
      date_default_timezone_set(“Asia/Shanghai”);

    2. //”Asia/Chongqing”為“亞洲/重慶”
      date_default_timezone_set(“Asia/Chongqing”);

    3. //”Asia/Harbin”為”亞洲/哈爾濱”
      date_default_timezone_set(“Asia/Harbin”);
    4. (推薦)
      //”PRC”為“中華人民共和國”
      date_default_timezone_set(“PRC”);

    ===

  2. 設定php.ini檔案(不推薦)
    如圖:
    這裡寫圖片描述

    在php.ini中找到date.timezone 去掉它前面的;號,然後設定date.timezone = “PRC”;即可。