如果我设置时区,请执行以下操作:
date_default_timezone_set('America/Los_Angeles');
它会影响time()
的价值吗?
答案 0 :(得分:4)
不,它没有。您的系统知道绝对时间。时间戳(time()
)表示绝对时间戳。时区设置仅影响由date()
生成的人类可读时间格式,因为它们与地球上的特定位置相关(因为正午时它通常是太阳在天空中最高的时候,并且因地而异。)
答案 1 :(得分:3)
我不相信
返回自Unix Epoch(1970年1月1日00:00:00 GMT)以来秒数测量的当前时间。
最后注意GMT。
另请阅读php.net的第一条评论()
文档应该包含此信息。函数time()返回 始终是与时区无关的时间戳(= UTC)。
<?php
date_default_timezone_set("UTC");
echo "UTC:".time();
echo "<br>";
date_default_timezone_set("Europe/Helsinki");
echo "Europe/Helsinki:".time();
echo "<br>";
?>
字符串的本地时间可以通过mktime()获取strftime()和本地时间戳(如果需要)。