深入解析PHP 5.3.x 的strtotime() 时区设定 警告信息修复

前端之家收集整理的这篇文章主要介绍了深入解析PHP 5.3.x 的strtotime() 时区设定 警告信息修复前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

PHP Warning:
strtotime(): 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 'Asia/Chongqing' for 'CST/8.0/no DST' instead in /var/www/cacti/index.PHP
查了一些资料,说是PHP版本太高,在新版本中必须指定timezone之类的。

1、在PHP配置文件添加timezone的配置

(参照debian的配置规则,添加小的配置规则文件即可,好维护,自定义性好)
~# vim /etc/PHP/cli-PHP5.3/ext-active/date_timezone.ini
date.timezone = "Asia/Shanghai"
~ # env-update
~ # source /etc/profile
自定义文件放在cli-PHP5.3/ext-active目录中,是因为PHP默认是采用cli方式,另外ext-active目录是表示启用特性的专用目录,这个可以从/etc/env.d/20PHP5.3文件中看出来
MANPATH="/usr/lib/PHP5.3/man/"
CONFIG_PROTECT_MASK="/etc/PHP/cli-PHP5.3/ext-active/ /etc/PHP/cgi-PHP5.3/ext-active/ /etc/PHP/apache2-PHP5.3/ext-active/"

2、在出现错误提示PHP文件添加date_default_timezone_set('Asia/Shanghai');位置是在中国上海

在某些参考资料中是说这两个方法任选其一就可,但经我测试,必须两个方法同时使用,才不会再出现错误提示。经实测其实第二个方法并不需要在每个出现错误提示PHP文件添加,只需在其中一个PHP文件添加即可。另外添加的时区不需要与提示中的时区一样,比如系统给我的提示是Chongqing,但我设置成Shanghai也是一样的,当然这个时间也是与我系统的时区设置是一样的。

原文链接:https://www.f2er.com/php/25775.html

猜你在找的PHP相关文章