时间转日期差8小时,翻俩小时代码,是时区没设,加上之后立刻对了

11年前 (2016-06-17)阅读1回复0
genmulu
genmulu
  • 管理员
  • 注册排名1
  • 经验值27950
  • 级别管理员
  • 主题5590
  • 回复0
楼主

新手写PHP,时间戳转日期,出来的时间和实际差8小时,找bug找半天,其实就是时区没设对,不是代码错。第一,PHP开头先设时区为Asia/Shanghai,不然默认是UTC时间,差8小时;第二,别在每个文件里单独设时区,在php.ini里统一设一次;第三,存数据库的时候用时间戳,显示的时候再转成日期,别存字符串日期;第四,别用mktime这种老函数,用DateTime类,不容易出错。

我之前写代码,时间转日期差8小时,翻了俩小时代码,才发现是时区没设,加上date_default_timezone_set之后,时间立刻对了。很多新手遇到时间不对,以为是数据库错,其实就是时区没设。

本站源码来源于网络收集修改或者交换,甚至可能并非原创,如遇未经考证信息需持审慎态度。若有疑问,可联系本站处理。

本文地址:https://www.genmulu.cn/genmulu/3962.html

0
回帖

时间转日期差8小时,翻俩小时代码,是时区没设,加上之后立刻对了 期待您的回复!

取消
载入表情清单……
载入颜色清单……
插入网络图片

取消确定

图片上传中
编辑器信息
提示信息