MySQL時(shí)區(qū)問題:
MySQL數(shù)據(jù)庫(kù)默認(rèn)的時(shí)區(qū)是UTC時(shí)間,如果需要存儲(chǔ)或者讀取本地時(shí)間,需要考慮時(shí)區(qū)的問題。 可以通過設(shè)置MySQL的時(shí)區(qū),在連接MySQL時(shí)統(tǒng)一設(shè)置時(shí)區(qū),或者直接在SQL語句中進(jìn)行轉(zhuǎn)換。 1. 設(shè)置MySQL時(shí)區(qū) 在mysql配置文件my.cnf或者mysql命令行下設(shè)置時(shí)區(qū): [mysqld] default-time-zone = '+8:00' 2. 在查詢中轉(zhuǎn)換時(shí)區(qū) 可以使用MySQL內(nèi)置函數(shù)CONVERT_TZ()將UTC時(shí)間轉(zhuǎn)換為本地時(shí)間。 例如: SELECT CONVERT_TZ('2018-06-14 12:00:00', '+00:00', '+8:00');
PHP時(shí)區(qū)問題:
PHP默認(rèn)的時(shí)區(qū)也是UTC時(shí)間,與MySQL同樣需要注意時(shí)區(qū)問題,否則會(huì)出現(xiàn)時(shí)間顯示不統(tǒng)一的問題。 在PHP中使用date()函數(shù)時(shí),需要考慮時(shí)區(qū)問題,并且必須在php.ini中配置時(shí)區(qū)。 1. 配置php.ini時(shí)區(qū) 找到php.ini文件,將date.timezone設(shè)置為本地時(shí)區(qū)。 例如: date.timezone = Asia/Shanghai 2. 顯示本地時(shí)間 在PHP中可以通過date()函數(shù)來顯示本地時(shí)間。 例如: echo date('Y-m-d H:i:s');