Yii2中的默认时区是什么


What is default timezone in Yii2?

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

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

问题出在哪里?

检查文档:

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

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

对于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设置时区

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

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

Yii2应用程序>时区

date_default_timezone_get() 

是php内置函数。yii2将时区设置为配置中设置的时区。Raw php不这样做,所以服务器的默认时区被提取