在PHP中将时区设置为UTC(0)

为什么这个工作?

date_default_timezone_set('Australia/Currie');

但这似乎没有任何效果呢?

date_default_timezone_set('UTC');

将时区设置为UTC时,此值不更改:

echo date('Y-m-d H:i:s', time());

我使用php 5.2.13,我的服务器的时区是:

$server_tz = date_default_timezone_get();
echo $server_tz; //outputs 'America/Guayaquil'

这是原来的代码:

echo time() . "<br>\n";
date_default_timezone_set('UTC');
echo time() . "<br>\n";

输出:

1317235130
1317235130
问题是你显示time(),这是一个基于GMT / UTC的UNIX时间戳。这就是为什么它不改变。 date(),根据该时间戳格式化时间。

时间戳是自Unix纪元(1970年1月1日00:00:00 GMT)以来的秒数。

echo date('Y-m-d H:i:s T', time()) . "<br>\n";
date_default_timezone_set('UTC');
echo date('Y-m-d H:i:s T', time()) . "<br>\n";
http://stackoverflow.com/questions/7587435/setting-timezone-to-utc-0-in-php

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:在PHP中将时区设置为UTC(0)