PHP date_default_timezone_set 没有更改 time() - 为什么?
为什么当我使用 date_default_timezone_set()
时,它与 time()
没有区别?
我当然希望下面的 $server_time
和 $local_time
的值不同吗?
$server_time = time();
date_default_timezone_set('Pacific/Guam');
$local_time = time();
print_r(get_defined_vars());
-------
/* echoed output */
Array
(
[server_time] => 1314261374
[local_time] => 1314261374
)
Why when I use date_default_timezone_set()
does it make no difference to the time()
?
Surely I would expect the values of $server_time
and $local_time
, below, to be different?
$server_time = time();
date_default_timezone_set('Pacific/Guam');
$local_time = time();
print_r(get_defined_vars());
-------
/* echoed output */
Array
(
[server_time] => 1314261374
[local_time] => 1314261374
)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
时间戳始终没有任何时区信息。如果您使用日期,您会看到差异:
A timestamp is always without any timezone information. If you use date you see the difference:
time()
与时区无关。time()
is timezone independant.time()
返回当前 Unix 时间戳。如果这取决于时区,程序员会发疯的。time()
returns the current Unix timestamp. If it depends the timezone, the programmers will be get crazy.