5

在 Apache 的SetEnv TZ (.htaccess) 和 PHP 的date.timezone (php.ini)中设置时区有什么区别?我无法检测到SetEnv TZ是如何被使用的。我尝试将SetEnv TZ设置为一个值,将 date.timezone 设置为另一个时区,但只有后者date.timezone似乎对网页有任何影响。我还想知道 Apache configuratoins 和 PHP 配置如何影响服务器,例如哪个覆盖哪个。

4

1 回答 1

3

URL http://www.php.net/manual/en/function.date-default-timezone-get.php应该会给你确切的答案;简而言之(假设 php > 5.4.0 的最新版本),它会检查 php 中带有 date_default_timezone_set() 的集合,如果未设置,则检查 php.ini 中 date.timezone 的值。如果那个没有设置 - 它放弃了。所以 TZ 被忽略。

或者换句话说,对于 > 5.4.0,环境变量 TZ 永远不会被咨询。

对于 5.4.0 及之前的版本 - 未设置默认值/ini 时会参考它。有关确切顺序和详细信息,请参见上面的 URL。

于 2012-07-16T11:19:23.620 回答