gpt4 book ai didi

php - 不同的时区具有相同的时间戳?

转载 作者:行者123 更新时间:2023-12-02 05:44:20 25 4
gpt4 key购买 nike

我运行了这个脚本:

echo date_default_timezone_get()."\n";
echo "----\n";

date_default_timezone_set('Asia/Kabul');
echo date_default_timezone_get()."\n";
echo "----\n";

echo time()."\n";
$dt = new DateTime;
echo $dt->format('U') . "\n";
echo "----\n";

date_default_timezone_set('UTC');
echo date_default_timezone_get()."\n";
echo "----\n";

echo time()."\n";
$dt = new DateTime;
echo $dt->format('U') . "\n";

对于所有 4 个时间戳值,它表示:1325905766

我在某处读到新的 DateTime 总是将 UTC 设置为时区,无论时区设置如何,所以我明白了,但是 time() 呢?

几秒钟前,在另一台服务器上(可能不在欧洲 (ideone.com)),它返回 4 次:1325905723

是一样的! (明显有几秒钟的差异,但时区相同。)

time() 始终且仅返回 UTC???怎么回事??

最佳答案

是的,他们都使用 UTC。具体来说,time()U 格式都返回自 1970 年 1 月 1 日午夜 UTC(“Unix 纪元”)以来经过的非闰秒数。由于纪元是一个固定点,其定义独立于用户的时区,并且从那时起的秒数在所有时区都相同(忽略相对论效应等),time() 返回无论时区设置如何,都具有相同的值。

关于php - 不同的时区具有相同的时间戳?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8767030/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com