PHP date_default_timezone_set 没有更改 time() - 为什么?

发布于 2024-12-01 05:42:00 字数 414 浏览 0 评论 0原文

为什么当我使用 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

↘人皮目录ツ 2024-12-08 05:42:00

时间戳始终没有任何时区信息。如果您使用日期,您会看到差异:

$server_time=date(DATE_W3C);
date_default_timezone_set('Pacific/Guam');
$local_time=date(DATE_W3C);
print_r(get_defined_vars());

----
/* echoed output */
Array
(
    [server_time] => 2011-08-25T10:49:26+02:00
    [local_time] => 2011-08-25T18:49:26+10:00
)

A timestamp is always without any timezone information. If you use date you see the difference:

$server_time=date(DATE_W3C);
date_default_timezone_set('Pacific/Guam');
$local_time=date(DATE_W3C);
print_r(get_defined_vars());

----
/* echoed output */
Array
(
    [server_time] => 2011-08-25T10:49:26+02:00
    [local_time] => 2011-08-25T18:49:26+10:00
)
〗斷ホ乔殘χμё〖 2024-12-08 05:42:00

time() 与时区无关。

time() is timezone independant.

流星番茄 2024-12-08 05:42:00

time() 返回当前 Unix 时间戳。如果这取决于时区,程序员会发疯的。

time() returns the current Unix timestamp. If it depends the timezone, the programmers will be get crazy.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文