問題
資料庫內的時間是正常的,讀取出來之後少了 8 小時
類似的問題
上下文
根據評論區的疑問補充一些資訊
- 系統環境:win 10
- 資料庫版本:MySQL 5.7
- 欄位設定
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '建立時間',
`updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新時間',
- 使用 navicat、heidisql 以及寫 PDO 查詢出來資料是一樣的
處理過程
看了很多教程,都是隻需要改 timezone
,設定成 PRC 或者是 Asia/Shanghai 就好了,我這邊測試是還需要一起設定 DB_TIMEZONE
才可以。
解決方案
config/app.php
'timezone' => env('APP_TIMEZONE','PRC'),
config/database.php
'mysql' => [
'timezone' => env('DB_TIMEZONE', '+08:00'),
],
本作品採用《CC 協議》,轉載必須註明作者和本文連結