解决php的“It is not safe to rely on the system’s timezone settings”问题

yipeiwu_com6年前PHP代码库

如果使用PHP5.3以上版本时,如果没有正确的配置php.ini就会出现PHP日期函数的错误。以前很多旧的PHP编程教程没有说到这个问题,所以不少读者会觉得困惑,下面笔者为大家讲述解决这个问题的三种方法。
"PHP Warning:
date() [function.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"

实际上,从PHP 5.1.0,当对使用date() 等函数时,如果 timezone 设置不正确,在每一次调用时间函数时,都会产生 E_NOTICE 或者 E_WARNING 信息。而又在 PHP 5.1.0 中,date.timezone 这个选项,默认情况下是关闭的,无论用什么PHP 命令都是格林威治标准时间,但是PHP 5.3 中好像如果没有设置也会强行抛出了这个错误的,解决此问题,只要本地化一下就行了。

一、在页头使用date_default_timezone_set()设置 date_default_timezone_set('PRC'); //东八时区 echo
date('Y-m-d H:i:s');

二、在页头使用 ini_set('date.timezone','Asia/Shanghai');

三、修改 php.ini(如果是 windows 系统,那么文件在 C 盘,Windows 目录下,假如系统是安装在 C 盘)。使用记事本打开 php.ini 查找 date.timezone 去掉前面的分号修改成为:date.timezone = PRC
重启http服务(如apache2或iis等)即可!

以上三种方法任选其中一种即可,小编推荐使用第三种方法,不用每次都要增加额外的代码。

相关文章

PHP获取用户的浏览器与操作系统信息的代码

1.用户访问服务器时,利用PHP的超级全局变量$_SERVER数组中字段['HTTP_USER_AGENT'] 获取访问用户的所有信息 我访问时的$_SERVER['HTTP_USER_...

php实现的在线人员函数库

//增加用户      function AddUser($username){    &nb...

PHP中的随机性 你觉得自己幸运吗?

PHP中的随机性 你觉得自己幸运吗?

本文分析了生成用于加密的随机数的相关问题。 PHP 5没有提供一种简单的机制来生成密码学上强壮的随机数,但是PHP 7通过引入几个CSPRNG函数来解决了这个问题。 一、什么是CSPR...

php创建基本身份认证站点的方法详解

 默认情况下,大多数web服务器一般被配置为匿名访问,也即为,用户在访问服务器上的信息时一般不会被要求提示标识信息。匿名访问意味着用户不使用用户名和密码登陆就可以访问网站。这也...

一些常用的php简单命令代码集锦

删建:  引用 if(file_exists("file.htm"))// 检查是否存在此文件 if(file_exists("chat"))//检查是否存在此文件夹...