首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Yii2:设置时区

Yii2:设置时区
EN

Stack Overflow用户
提问于 2019-02-08 17:03:06
回答 3查看 5.8K关注 0票数 0

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

代码语言:javascript
复制
'timeZone' => 'Europe/Berlin',

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

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

编辑

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

我无法修改php.ini文件。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-02-26 17:31:41

我找到了一个不修改php.ini的解决方案

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

代码语言:javascript
复制
$application = Yii::createObject('yii\web\Application', [$config->web()]);

// make PHP use the same timezone as Yii2
date_default_timezone_set($application->timeZone); 

$application->run();

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

票数 4
EN

Stack Overflow用户

发布于 2019-02-08 17:12:34

您可以在格式化程序组件中设置时区。这意味着时区将仅用于输出带有格式化程序的日期。如果你想设置全局时区,你应该在Application config中设置它。例如:

代码语言:javascript
复制
[
    'id' => 'basic',
    'timeZone' => 'Europe/Berlin',
    // other parameters of the application
]
票数 2
EN

Stack Overflow用户

发布于 2021-05-06 12:37:57

common/config/main.php

'timeZone‘=>’亚洲/塔什干‘,

票数 -3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54588949

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档