PHP程序date()函数报错解决办法

前段时间测试一个php项目,测试环境为centos 6+php5.3

结果安装的时候老报错,给出安全警告后,一直安装不上,后来发现那个程序用的php版本是5.0,我汗。。

而从php5.1起加入了新的安全机制,所以我们需要更改下测试环境的设置才能安装程序

如果你也遇到了类似警告,可以尝试使用以下方法解决:

PHP Warning: date(): It is not safe to rely on the system's timezone settings.
You are *required* to use the date.timezone setting or the date_default_timezone_set() function. 
In case you used any of those methods and you are still getting this warning, 
you most likely misspelled the timezone identifier.
 We selected 'UTC' for '8.0/no DST' instead in D:PHPWEB ewsfile.php on line 17

 

解决办法:

#vi /etc/php.ini
找到date设置段中的date_timezone=这一行
添加上PRC,即改为date_timezone=PRC
需要注意的是这段默认是被注释掉了,记得去掉前面的分号,取消注释
然后重启apache服务,
#service httpd restart即可。

PS:网上有人说还需要对程序进行修改

有人给出如下解决方案

设置 date_default_timezone_set('PRC')
ini_set('date.timezone','Asia/Shanghai')
打开php5.ini查找date.timezone 去掉前面的分号修改成为:date.timezone =PRC
重启http服务(如apache2或iis等)即可。

也有人说程序或者php.ini只用修改一样就可以了,

但是我本人测试的是,只修改php.ini确实可以达到效果,

而单独修改程序却不行,也许是我操作失误也说不准,

这里说明一下,如果单修改php.ini后还是不行,

可以尝试按照网上的教程修改一下程序中date函数部分(一般函数位置都会在报错信息中提示)。