UTC to local time adjustment woes with PHP
本问题已经有最佳答案,请猛点这里访问。
有人可以解释为什么以下不起作用?
我有一个在共享主机帐户上运行的PHP脚本。 脚本应输出我的本地时间(对于我所在的时区,即
我正在阅读time()PHP方法的文档,该方法应该返回UTC(或GMT)的Unix时间戳。 好的,好的。 所以我需要减去8小时才能得到当地时间,对吧?
所以我这样做:
但是我的时间已经落后了5个小时!
一行声明中可能出现什么问题?
PS。 对不起,如果我问明显的话。 我来自
PHP的time()函数将始终返回自纪元以来的秒数。 获得意外行为的罪魁祸首实际上是date()函数。
PHP的date()函数会自动将日期转换为PHP的当前默认时区,这必须是GMT - 3.这就是为什么当你减去8小时后你就落后了5个小时。
您可能想要签入gmdate()而不是使用date()。 就像是:
可能是你需要的。