【问题标题】:How to convert server time to local time?如何将服务器时间转换为本地时间?
【发布时间】:2011-02-12 08:26:59
【问题描述】:

我的 php 文件托管在世界其他地方。 date()time() 函数返回服务器上的日期/时间。如何转换该日期以使其与我的本地日期/时间相同?

服务器上的日期比我的当地时间晚 10 小时。我可以硬编码并从服务器时间中减去它。但是,正确的方法是什么,以便不必硬编码任何值?

【问题讨论】:

标签: php


【解决方案1】:

time() 不返回“服务器上的时间”,即它返回与本地时区无关的 UNIX-timestamp(它始终使用 GMT 作为时区)。 date() 根据服务器的时区将 UNIX 时间戳等格式化为用户可读的格式。您可以使用date_default_timezone_set() 设置自定义时区(将其放在您的 index.php 或 config.php 中)。有关支持的时区列表,请查看http://php.net/manual/en/timezones.php

基本上,您可以对每个时区使用 time()(它使用固定时区,因此在“不同时区”中它的值将相同),并且 date() 与 date_default_timezone_set() 一起用于打印日期/时间。

【讨论】:

    【解决方案2】:

    可以使用这个功能date_default_timezone_set

    date_default_timezone_set('Europe/Zurich');
    

    我想这会得到它,这是list of timezones

    希望这会有所帮助:)

    【讨论】:

      猜你喜欢
      • 2010-09-24
      • 1970-01-01
      • 2017-10-08
      • 1970-01-01
      • 2016-07-08
      • 2023-03-31
      • 1970-01-01
      • 2013-04-26
      • 2012-01-26
      相关资源
      最近更新 更多