【发布时间】:2014-07-23 15:08:51
【问题描述】:
我正在尝试使用 php 获取本地时间。我写了两个不同的版本,但都给出了错误的时间
date_default_timezone_set('UTC');
$now = new DateTime();
echo $now->getTimestamp();
另一种方式
date_default_timezone_set('America/New York');
echo strtotime("now")."<br/>";;
$now = new DateTime();
echo $now->getTimestamp();
在这两种情况下,我的时间都比当地时间早了 4 个。还有其他方法可以获取当地时间吗?
【问题讨论】:
-
America/New York是您当地的时区吗?它们都返回相同的值吗? -
@esqew 是的,他们都同时返回
-
@SureshKamrushi 你是怎么想到的?
-
您正在检索时间戳。时间戳始终为 UTC。换句话说,您将永远,我的意思是永远在您致电
getTimestamp()时获得 UTC 时间。 -
注:是正确的。而不是打印 UNIX 时间戳,打印
$now->format(DateTime::W3C)会给你一个更完整的画面。
标签: php