php時區不改會導致輸入資料庫的時間以及取得的時間與實際時間不相同,其解決方案:1、更改php.ini檔案中的「data.timezone = PRC」;2、添加“data_default_timezone_set('PRC');”。
本文操作環境:windows7系統、PHP7.4版、DELL G3電腦
php時區不改會怎麼樣?
php時區不改會導致輸入資料庫的時間以及取得的時間與實際時間不相同。
PHP中遇到的時區問題解決方法
最近,在用PHP MySQL寫一個小程式的時候,發現一個問題:輸入資料庫的時間與實際時間差8小時,這和中國位於的東8區是符合的。由於資料庫時間是由PHP寫入的,那麼問題就出現在PHP了。
最近在學習PHP過程中發現PHP中的格式化時間戳比北京時間晚了8個小時,上網搜尋發現原來是時區不對,解決方法是:
1、永久修改
變更php.ini檔案中的data.timezone = PRC 這是中國時間。重啟Apache服務後生效。
2、暫時修改
# 在使用格式化輸入時間之前,加上ini_set('date.timezone','Asia/Shanghai');
PRC');//date_default_timezone_set() 函數設定用在腳本中所有日期/時間函數的預設時區。 看看其他小夥伴遇到的問題 之前有一個遺留問題,就是echo date("Y-m-d H:i:s",time())回來的時間總是與實際時間對不上,今天終於在網上找到了原因和解決方法,分享如下:補充一點,按照下面提示的方法修改php.ini找不到date.timezone 這行,是不是就沒辦法了呢,當然不是啦,哈哈沒有的話就自己加嘛,自己動手豐衣足食。加了這樣一句date.timezone = "PRC",問題就搞定了,高興從php5.1.0開始,php.ini裡加入了date.timezone這個選項,預設是關閉的也就是顯示的時間(無論用什麼php指令)都是格林威治標準時間,和我們的時間(北京時間)差了正好8個小時,有以下3中方法可以恢復正常的時間。 1,最簡單的方法就是不要用php5.1以上的版本2,如果一定要用,而且不能修改php.ini,則需要在關於時間的初始化的語句的上面加上date_default_timezone_set (XXX);3,一勞永逸,只限能修改php.ini。打開php.ini查找date.timezone 去掉前面的分號= 後面加上XXX,重啟http服務(如apache2或iis等)即可推薦學習:《PHP影片教學》
以上是php時區不改會怎麼樣的詳細內容。更多資訊請關注PHP中文網其他相關文章!