PHP5.2中date()函数显示时间与北京时间相差8小时的解决办法
问题:
php函数date("Y-n-d H-i-s"); 输出的时间与当地时间相差8个小时.
解决思路
北京时间是东8区,可能是时区问题.但是此前都没问题啊,经过google发现原来从php5.1.0开始,php.ini里加入了 date.timezone这个选项,默认情况下是关闭的,也就是显示的时间(无论用什么php命令)都是格林威治标准时间,和我们的时间(北京时间)差了正好8个小时。
在调用date()函数之前先设定时区。
方法一:
date_default_timezone_set('PRC');
没有返回值。下面再直接使用date函数就OK了
$time = date(Y."年".m."月".d."日".G."时".i."分");
方法二:
修改php.ini中的;date.timezone = 为date.timezone = "Asia/Shanghai"(或者改为date.timezone = PRC)并去掉前面的分号,重启Apache即可。
相关文章
php数组函数序列之array_unique() - 去除数组中重复的元素值
array_unique() 函数移除数组中的重复的值,并返回结果数组。 当几个数组元素的值相等时,只保留第一个元素,其他的元素被删除。2011-10-10php 正确解码javascript中通过escape编码后的字符
js的escape如何在PHP中来解呢?下面的这个函数可以正确的解析,网上有不少unescape的函数,但好用的不多.2010-01-01php array_map array_multisort 高效处理多维数组排序
用array_map和array_multisort高效处理多维数组排序的实现代码。2009-06-06关于php程序报date()警告的处理(date_default_timezone_set)
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() function2013-10-10
最新评论