如何准确地我通过的strtotime获取当前UTC时间?
题
在PHP中,如何获取当前时间,UTC中,没有在我的托管服务提供商是硬编码的知识?
例如,我试过如下:
time() + strtotime('January 1, 2000')-strtotime('January 1, 2000 UTC')
和发现它的报告时间是提前的实际UTC时间一小时。我在两个不同的时区具有相同的结果尝试这两个不同的托管服务提供商。
是否有一个可靠的(和,希望清洁器)的方式来精确地获得UTC时间?
我限于PHP 4.4.9所以无法使用新的时区的东西加到PHP5。
谢谢,提前
解决方案
这似乎为我工作。当然,你还需要测试它在PHP 4,因为我所有的服务器都具有PHP 5,但手册宣称,这应该PHP 4的工作。
$t = time();
$x = $t+date("Z",$t);
echo strftime("%B %d, %Y @ %H:%M:%S UTC", $x);
围绕第一次,我忘记该日期可以在呼叫之间改变时间()和日期()。
其他提示
$time = new DateTime('now', new DateTimeZone('UTC'));
echo $time->format('F j, Y H:i:s');
这是否工作的PHP 4.4.9?
echo gmdate('Y-m-d H:i:s', time());
或者,如果你想为一个特定的日期:
$time = strtotime('January 1, 2000 UTC');
if($time){
echo gmdate('Y-m-d H:i:s', $time);
}
$utcTtime = gmmktime();
$unixTimestamp = time();
gmmktime
:获取Unix时间戳一个GMT日期
不隶属于 StackOverflow