【问题标题】:"It is not safe to rely on the system's timezone settings"“依赖系统的时区设置是不安全的”
【发布时间】:2011-08-07 11:57:36
【问题描述】:

我有一个一周前完成的脚本,没有任何问题或错误。今天又测试了一下,收到如下消息:

严格标准:date() [function.date]:依赖是不安全的 系统的时区设置。请使用 date.timezone 设置, TZ 环境变量或 date_default_timezone_set() 功能。如果您使用了这些方法中的任何一种,但您仍然 收到此警告,您很可能拼错了时区 标识符。我们在 '1.0/DST' 中选择了 'Europe/London' C:\Users\xx\VertrigoServ\www\login\PHPMailer\class.phpmailer.php 上 第 1925 行

严格标准:date() [function.date]:依赖是不安全的 系统的时区设置。请使用 date.timezone 设置, TZ 环境变量或 date_default_timezone_set() 功能。如果您使用了这些方法中的任何一种,但您仍然 收到此警告,您很可能拼错了时区 标识符。我们在 '1.0/DST' 中选择了 'Europe/London' C:\Users\xx\VertrigoServ\www\login\PHPMailer\class.phpmailer.php 上 第 1929 行

我已经在 php.ini 中设置了;date.timezone = "Europe/Lisbon" 并且发生了同样的情况。我已经重启了服务器

有什么想法吗?

【问题讨论】:

    标签: php timezone


    【解决方案1】:

    在 php.ini 中,; 取出一行,所以;date.timezone = "Europe/Lisbon" 什么也不做。通过删除前面的 ; 取消注释该行并重新启动 Apache。

    【讨论】:

    • +1(旁注)以防您无法访问 php.ini(共享主机或其他东西),只需使用 date_default_timezone_set() 从 PHP 代码设置时区。
    【解决方案2】:

    为什么不做以下事情:?

    date_default_timezone_set('Europe/Lisbon');
    

    【讨论】:

    • 完全同意,如果您无权访问 php.ini 或者您可以通过 .htaccess 访问,这是更简单的方法。
    • @A.L 取决于您的用例...如果您从头开始编写一个普通的 PHP 站点,这将进入您的引导过程。如果您只需要临时设置时区,请在日期计算之前使用此代码(并在之后再次使用它来重置状态)。原则上,您需要在使用日期/时间功能之前使用它。
    猜你喜欢
    • 2012-09-14
    • 2011-08-27
    • 2015-07-13
    • 2014-07-18
    • 2014-01-11
    • 2011-01-13
    • 2017-11-20
    • 2016-07-22
    相关资源
    最近更新 更多