日期功能在我的登台服务器上发出警告

时间:2012-05-08 13:19:42

标签: php date

我在我的php脚本中使用日期功能,如此

 $doy = date('z') + 1;
 $edition = date('Y') . $doy;

在我的本地机器上它没有给我任何警告但是在我的登台服务器上它发出以下警告为什么会这样。我该如何删除?

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

5 个答案:

答案 0 :(得分:5)

  

您需要使用date.timezone设置或date_default_timezone_set()函数。

这正是你必须做的......

date_default_timezone_set('Europe/Paris');

或者在php.ini中:

date.timezone = Europe/Paris

显然你可以使用你想要的任何时区。

答案 1 :(得分:0)

在调用date()之前,使用date_default_timezone_set('Europe / Kiev')设置默认时区。支持的时区列表位于:http://ru2.php.net/manual/en/timezones.php

答案 2 :(得分:0)

您只需在页面顶部设置默认时区

即可
  date_default_timezone_set('America/Chicago');

如果你只是想暂时使用它

   $dateTime = new DateTime();
   $DateTimeZone = timezone_open ( 'America/Chicago' );
   $dateTime->setTimezone( $DateTimeZone );
   echo $dateTime->format("Y") , ($dateTime->format("z") + 1);

答案 3 :(得分:0)

您想要一年中的某一天或时区吗?既然你把它命名为$ doy,我以为你想要一年一度。但是,您获得的所有错误消息都是时区。在Oreilly Book的第139页上有一个日期函数格式说明符列表,您使用的小写“z”表示一年中的某一天。在书的其他地方,我读到大写字母“Z”用于时区。当错误消息在时区上回复时,似乎存在某种故障,但您的代码指定了一年中的某一天。

我所指的书是“学习PHP,MySQL,JavaScript和CSS。”

答案 4 :(得分:-2)

这是由登台服务器上的错误设置引起的。 您可以通过更改错误报告级别

来删除此输出

示例:

// Report simple running errors
error_reporting(E_ERROR | E_WARNING | E_PARSE);

您可以在php网站上找到更多信息:http://php.net/manual/en/function.error-reporting.php

但你也可以像Baba发布的那样解决这条消息。