Yii2:设置时区



我在 Yii2 应用程序中设置了时区,如 config/web.php 中的文档中所述:

'timeZone' => 'Europe/Berlin',

但是:这只对 Yii2 有效,显然对 PHP 函数无效,例如 date() .PHP 时区设置保持不变,因此 PHP 和 Yii2 之间存在差异。

如何使 Yii2

时区成为根据 Yii2 配置中的时区设置设置 PHP 时区的前导时区?

编辑

时区是在应用程序组件Yii::$app中设置的,而不是在格式化程序组件中设置的。

我无法修改php.ini文件。

我找到了无需修改php.ini的解决方案:

./web/index.php./yii 中,根据 Yii2 设置设置 PHP 时区:

$application = Yii::createObject('yiiwebApplication', [$config->web()]);
// make PHP use the same timezone as Yii2
date_default_timezone_set($application->timeZone); 
$application->run();

请不要忘记以类似的方式修改控制台命令yii/yii.bat

在格式化程序组件中设置时区。这意味着时区将仅用于使用格式化程序输出日期。如果要设置全局时区,则应在应用程序配置中进行设置。例如:

[
    'id' => 'basic',
    'timeZone' => 'Europe/Berlin',
    // other parameters of the application
]

common/config/main.php

'时区' => '亚洲/塔什干',

相关内容

  • 没有找到相关文章

最新更新