如何修复与时区(function.strotime和function.date)相关的PHP错误

如何修复与时区(function.strotime和function.date)相关的PHP错误,php,Php,升级到新服务器时,我重复了两个错误: 警告:strotime()[function.strotime]:依赖它是不安全的 系统的时区设置。您必须使用 date.timezone设置或date\u default\u timezone\u set()函数。在里面 如果你使用了这些方法中的任何一种,你仍然会得到这个 警告,您很可能拼错了时区标识符。我们 选择“美国/纽约”作为“EST/-5.0/无DST”,而不是在 及 警告:date()[function.date]:依赖 系统的时区设置。您必须使

升级到新服务器时,我重复了两个错误:

警告:strotime()[function.strotime]:依赖它是不安全的 系统的时区设置。您必须使用 date.timezone设置或date\u default\u timezone\u set()函数。在里面 如果你使用了这些方法中的任何一种,你仍然会得到这个 警告,您很可能拼错了时区标识符。我们 选择“美国/纽约”作为“EST/-5.0/无DST”,而不是在

警告:date()[function.date]:依赖 系统的时区设置。您必须使用 date.timezone设置或date\u default\u timezone\u set()函数。在里面 如果你使用了这些方法中的任何一种,你仍然会得到这个 警告,您很可能拼错了时区标识符。我们 在中选择“美国/纽约”作为“EST/-5.0/无DST”

我如何着手修理这些

问题代码如下:

'date' => date("Y-M-d",strtotime($Array['_dateCreated'])),
我尝试将此内容放在我所有页面的顶部:

<?php
date_default_timezone_set('America/New_York');
?>

提前感谢您的帮助。

通过将

date_default_timezone_set('America/New_York');

在抱怨的实际文件中。

php.ini
中的date.timezone可以全局解决此问题。

由于某些原因,我的/etc/php.ini文件中的date.timezone等添加内容似乎在重新启动apache后被忽略。结果表明/etc/php.ini不是正确的,而是[domain]/httpdocs/etc/php.ini是有效果的。您可以通过执行
phpinfo()
并查找
加载的配置文件
,找出服务器关心的
php.ini
。相关:注意:
php cli
php.ini
文件与
apache2
php.ini
文件不同。我建议用符号链接彼此以保持同步,避免混淆!我更喜欢这个。因为我不想更新我的php.ini文件。此外,您还可以全局设置项目的默认时区