什么是Yii2中的默认时区?

时间:2016-04-01 12:22:10

标签: php yii timezone yii2

我有我的本地系统时区Asia/Calcutta但是当我在Yii Framework中使用date_default_timezone_get()函数时,它会返回UTC

当我在Asia/Calcutta文件中使用时,同一函数会返回test.php

有什么问题?

3 个答案:

答案 0 :(得分:7)

查看文档:

http://www.yiiframework.com/doc-2.0/yii-base-application.html#getTimeZone%28%29-detail

它解释了"如果在php.ini或应用程序配置中没有配置时区,默认情况下它将设置为UTC。"

答案 1 :(得分:1)

date_default_timezone_get() 

是一个php内置函数。 yii2将时区设置为配置中设置的时区。原始php不会这样提取服务器的默认时区

答案 2 :(得分:0)

对于Yii 2,如果未在php.ini或应用程序配置中配置时区,则默认将其设置为UTC,即yii\base\Application

if (isset($config['timeZone'])) {
    $this->setTimeZone($config['timeZone']);
    unset($config['timeZone']);
} elseif (!ini_get('date.timezone')) {
    $this->setTimeZone('UTC');
}

如何为Yii 2设置时区

您可以在配置中为Yii2应用设置默认时区:

$config = [
    'timeZone' => 'Asia/Calcutta',
    'components' => [
    // ...
  

Yii2 Applications > timeZone