date()和gmdate时区问题 php

在php时间函数中,格式化时间函数date()和gmdate():

  date -- 格式化一个本地时间/日期

  gmdate -- 格式化一个 GMT/UTC 日期/时间,返回的是格林威治标准时(GMT),也就是说返回的是0时区的时间,并不是北京东八区的时间。

 
  假设当前北京时间是2010-08-14 12:15:27

  echo date('Y-m-d H:i:s', time()); 输出为:2010-08-14 12:15:27

  echo gmdate('Y-m-d H:i:s', time()); 输出为:2010-08-14 04:15:27

  但是这只是在Linux+Apache下运行PHP所得的结果,如果在Windows下运行,则2个函数返回都是:2010-08-14 04:15:27。

  所以,我们应该给一个兼容性的写法,统一使用gmdate,写法改进如下:

  echo gmdate('Y-m-d H:i:s', time() + 3600 * 8);(0时区加八个时区的时间则为北京时间)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值