我在winxp上使用XAMPP(PHP版本5.3.1)。当我尝试在我的localhost上调用time()或date()函数时。它会显示警告信息,
严重性:警告
消息:date()[function.date]:它是 不依赖系统的安全性 时区设置。您必需 使用date.timezone设置或 date_default_timezone_set() 功能。如果您使用过任何一个 那些方法,你还在 得到这个警告,你很可能 拼写错误的时区标识符。我们 为'8.0 /无DST'选择'UTC' 代替
文件名:helpers / date_helper.php
如何禁用警告?感谢。
答案 0 :(得分:59)
尝试在date.timezone
文件中设置php.ini
。或者,您可以使用ini_set()
或date_default_timezone_set()
手动设置它。
答案 1 :(得分:19)
您需要像这样设置默认时区smth:
date_default_timezone_set('Europe/Bucharest');
有关http://php.net/manual/en/function.date-default-timezone-set.php
的更多信息或者您可以在日期前使用@
来取消警告,但是警告声明依赖服务器默认时区是不安全的
答案 2 :(得分:10)
你也可以使用它:
ini_alter('date.timezone','Asia/Calcutta');
你应该在调用任何日期函数之前调用它。它接受键作为在运行时改变PHP设置的第一个参数,第二个参数是值。
在我弄明白之前,我已经完成了这些事情:
date_default_timezone_set("Asia/Calcutta");
- 无效ini_alter()
- IT WORKED date_default_timezone_set("Asia/Calcutta");
- IT WORKED 对我来说,init_alter()
方法让一切正常。
我在OSX山狮上运行Apache 2(预安装),PHP 5.3
答案 3 :(得分:3)
这恰好发生在我身上,因为 在php.ini中没有设置date.timezone!
; date.timezone =欧洲/柏林
使用php date()功能触发了该警告。
答案 4 :(得分:0)
error_reporting(E_ALL ^ E_WARNING);
:)
您应该更改主题为“如何在PHP中修复日期警告()”...