停止警告:date()[function.date]:来自localhost

时间:2012-01-02 19:19:29

标签: php date timezone warnings

  

警告:date()[function.date]:依赖系统的时区设置是不安全的。您必需使用date.timezone设置或date_default_timezone_set()函数。如果您使用了这些方法中的任何一种并且仍然收到此警告,则很可能拼错了时区标识符。我们选择了............

有许多Web应用程序会引发此特定错误。我可以设置

date_default_timezone_set('America/Los_Angeles');

但这不是我要找的解决方案。

我可以从系统级别执行某些操作。它只发生在LOCALHOST而不是实际的生产服务器上。

php.ini中的默认设置是date.timezone = America / Los_Angeles

[更新] 已编辑的php.ini

  

警告:phpinfo()[function.phpinfo]:依赖系统的时区设置是不安全的。您需要使用date.timezone设置或date_default_timezone_set()函数。如果您使用了这些方法中的任何一种并且仍然收到此警告,则很可能拼写错误的时区标识符

5 个答案:

答案 0 :(得分:8)

它在一台服务器而不是另一台服务器上发生的原因是php.ini设置date.timezone=

你仍然需要选择一个实际值。你肯定没有。或者在错误的php.ini版本中(有一个用于CLI,一个用于mod_php)。

答案 1 :(得分:1)

正如其他海报所提到的,在php.ini文件中设置date.timezone是可行的方法。如果您仍然看到需要设置它的错误,是否在设置php.ini后重新启动了Web服务器(apache,IIS等)?

此外,来自phpinfo的警告意味着其余的输出仍应显示。确保根据phpinfo()输出编辑正确的php.ini文件。

这可能会让你按照自己的意愿工作。

答案 2 :(得分:1)

从项目中删除此警告

有两种方法可以做到这一点......

1) date_default_timezone_set('亚/加尔各答&#39); 在index.php文件中包含此文件 这仅适用于您当前的项目

2) date_default_timezone_set('亚/加尔各答&#39); 或者在php.ini文件中包含此文件 这适用于每个项目

thnx:)

答案 3 :(得分:0)

警告说......

  

使用date.timezone设置

只需在php.ini中使用your timezone进行配置,一切都适用于服务器上的所有应用。

编辑如果您在配置此问题后仍然遇到此问题,您可能会发现您的系统使用多个php.ini文件。要找出用于Web服务器的ini文件,请使用phpinfo()

答案 4 :(得分:-1)

通过设置

起作用
if (webBrowser1.DocumentText.Contains(":"))
        {
            listBox1.Items.Add(webBrowser1.DocumentText.Contains(""));
        }

详情请访问:PHP Documentation - Asia Timezones