laravel8 时区设置无效解决办法 
                                                    
                        
                    
                    
  
                    
                    问题
数据库内的时间是正常的,读取出来之后少了 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 协议》,转载必须注明作者和本文链接
          
                    
                    
          
          
                关于 LearnKu
              
                    
                    
                    
 
推荐文章: