繁体   English   中英

date_default_timezone_set()是否会影响time()?

[英]Does date_default_timezone_set() effects time()?

如果我将时区设置为:

date_default_timezone_set('America/Los_Angeles');

它会影响time()的值吗?

不,不是的。 您的系统知道绝对时间 时间戳( time() )表示绝对时间戳。 时区设置仅影响date()产生的人类可读的时间格式,因为它们是相对于地球上的特定位置的(因为中午12:00通常在太阳在天空中最高时,并且在位置之间会有所不同)。

我不相信

返回自Unix纪元(1970年1月1日00:00:00 GMT)以来以秒为单位的当前时间。

注意最后的GMT。

另请阅读php.net上的第一个注释,以获取time()

该文档应具有此信息。 函数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>"; 
?> 

字符串形式的本地时间可以通过strftime()获得,本地时间戳(如果需要)可以通过mktime()获得。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM