php - Yii2:设置时区
问题描述
我在我的 Yii2 应用程序中设置了时区,如config/web.php中的文档所述:
'timeZone' => 'Europe/Berlin',
但是:这仅对 Yii2 有效,显然不适用于 PHP 函数,例如date()
. PHP 时区设置保持不变,因此 PHP 和 Yii2 之间存在差异。
如何使 Yii2 时区成为根据 Yii2 配置中的时区设置设置 PHP 时区的领先时区?
编辑
时区是在应用程序组件中设置的\Yii::$app
,而不是在格式化程序组件中。
我无法修改php.ini
文件。
解决方案
我找到了一个没有修改的解决方案php.ini
:
根据 Yii2 设置进入并设置 PHP 时区./web/index.php
:./yii
$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
。
推荐阅读
- ios - 如何从设备中完全删除 iOS 应用程序,就好像它从未安装过一样?
- python - Python Gil 任务优化
- reactjs - 无法在基于反应的 spa 中使用 react-clear-cache 清除缓存
- javascript - 像这样进行 API 调用会导致性能问题吗?
- kotlin - 带有 readLine() 的用户输入 100 不被视为 Int 吗?科特林
- keycloak - 如何使用外部身份提供者设置 ACR 值
- stata - 多个 Stata 变量中所有值的平均值
- google-cloud-platform - 如何查看 GKE 集群的创建时间?
- azure-web-app-service - 来自手机浏览器的格式错误的语法
- amazon-web-services - 为什么 Terraform 计划在配置未更改的情况下重新创建块?