15

我想在我的 YII 项目中设置默认时区。

date_default_timezone_set('Asia/Calcutta');

那么,它的最佳位置是什么。我应该把它放在哪里使它成为默认值。

4

3 回答 3

38

当有人引用应用程序属性或应用程序配置时,它意味着“根”配置变量,在这种情况下timeZone

配置部分:

<?php
// in protected/config/main.php
return array(
    'timeZone' => 'Asia/Calcutta'
    // Other configuration....
);
于 2013-07-30T13:21:43.183 回答
5

注意:不是 Yii 或 php 的东西。您必须在 php.ini 文件中定义 date.timezone。现在,我将为您提供一些解决此问题的步骤。

  • 首先创建您自己的 phpinfo.php 文件并放入 php 代码

    phpinfo();

  • 运行此脚本并查找 php.ini 文件的路径。

  • 打开 php.ini,查找 date.timezone 字符串并将值设置为(例如)

    date.timezone = '欧洲/罗马'

现在你再也不会得到那个错误了。为什么要在 php.ini 而不是 php 代码中修复这些东西?简单:如果您修复 php.ini 文件,您只需为所有网站执行一次此操作。如果您在 php 代码中修复这些东西,则每次开始一个新项目时都需要一次又一次地修复。

于 2013-07-30T21:33:50.037 回答
-1

把它放在 config/main.php 这是首先被读取的文件。把它放在返回数组()之前。

于 2013-07-30T20:30:06.043 回答