关于php时区时间错误问题
http://czy4411741.blog.163.com/blog/static/342031272008123115233915/
从php5.1.0开始,php.ini里加入了date.timezone这个选项,默认情况下是关闭的
也就是显示的时间(无论用什么php命令)都是格林威治标准时间
和我们的时间(北京时间)差了正好8个小时,有以下3中方法可以恢复正常的时间。
1,最简单的方法就是不要用php5.1以上的版本
2,如果一定要用,而且不能修改php.ini,则需要在关于时间的初始化的语句的
上面加上 date_default_timezone_set (XXX);
cp无此问题
3,一劳永逸,仅限能修改php.ini。打开php.ini查找date.timezone 去掉前面的分号
= 后面加XXX,重启http服务(如apache2或iis等)即可
关于XXX,大陆内地可用的值是:Asia/Chongqing ,Asia/Shanghai ,Asia/Urumqi (依次为重庆,上海,乌鲁木齐)
港台地区可用:Asia/Macao ,Asia/Hong_Kong ,Asia/Taipei (依次为澳门,香港,台北)
还有新加坡:Asia/Singapore
老外好像把北京漏调了
其他可用的值是:Etc/GMT-8 ,Singapore ,Hongkong ,PRC
PRC是什么?PRC是中华人民共和国啊-_-
---------------------------------------------------------------------------------------------------------------------
解决方式:
在页头使用date_default_timezone_set()设置我的默认时区为北京时间
date_default_timezone_set('PRC');
echo date('Y-m-d H:i:s');
时间和服务器当前时间一样了!!祝贺之
附date_default_timezone_set用法如下
--------------------------------
date_default_timezone_set
(PHP 5 >= 5.1.0RC1)date_default_timezone_set -- 设定用于一个脚本中所有日期时间函数的默认时区
说明
bool date_default_timezone_set ( string timezone_identifier )
date_default_timezone_set() 设定用于所有日期时间函数的默认时区。
注: 自 PHP 5.1.0 起(此版本日期时间函数被重写了),如果时区不合法则每个对日期时间函数的调用都会产生一条 E_NOTICE 级别的错误信息。
参数
timezone_identifier
时区标识符,例如 UTC 或 Europe/Lisbon
返回值
本函数永远返回 TRUE(即使 timezone_identifier 参数不合法)。
------------------------------------------------------------------------------------------
再附上时区标识符:
CET
CST6CDT
Cuba
EET
Egypt
Eire
EST
EST5EDT
Etc/GMT
Etc/GMT+0
Etc/GMT+1
Etc/GMT+10
Etc/GMT+11
Etc/GMT+12
Etc/GMT+2
Etc/GMT+3
Etc/GMT+4
Etc/GMT+5
Etc/GMT+6
Etc/GMT+7
Etc/GMT+8
Etc/GMT+9
Etc/GMT-0
Etc/GMT-1
Etc/GMT-10
Etc/GMT-11
Etc/GMT-12
Etc/GMT-13
Etc/GMT-14
Etc/GMT-2
Etc/GMT-3
Etc/GMT-4
Etc/GMT-5
Etc/GMT-6
Etc/GMT-7
Etc/GMT-8
Etc/GMT-9
Etc/GMT0
Etc/Greenwich
Etc/UCT
Etc/Universal
Etc/UTC
Etc/Zulu
Factory
GB
GB-Eire
GMT
GMT+0
GMT-0
GMT0
Greenwich
Hongkong
HST
Iceland
Iran
Israel
Jamaica
Japan
Kwajalein
Libya
MET
MST
MST7MDT
Navajo
NZ
NZ-CHAT
Poland
Portugal
PRC
PST8PDT
ROC
ROK
Singapore
Turkey
UCT
Universal
UTC
W-SU
WET
分享到:
相关推荐
PHP 时区列表[时差] 数据库内容依据,PHP手册(2011-04-18)...在“时差”中,指的是,设定时区与格林威治时间(GMT)的差别。 关于PHPzone,认真、固执、盲目。 wangyouworld wangyouworld#163.com(#=@) 2011-06-24
车机导航时间时区错误修正,修复车机上时区错误,导致的高德导航时间错误
Android 完美获取手机当前时区,解决时间偏移量和夏令时差问题.从本地时间里扣除这些变量,即可以取得UTC时间
Android 完美获取手机当前时区,解决时间偏移量和夏令时差问题.从本地时间里扣除这些变量,解决时间偏移量和夏令时差问题.从本地时间里扣除这些变量,
Linux系统手动修改时区和时间: 1.修改时区: 2.关于时区的设置:
用户的测试机安装的win7,测试时发现时间总是差8个小时。 在win7下装JDK1.4和JDK1.5、eclipse,输出系统时区和时间。...导入本压缩包中国时区注册表.reg 解决2003 WIN7 时区问题。 再有疑问联系,CSDN:lawsystem
JS世界时区时间代码,全球主要城市时区时间,有北京时间、孟买时间、纽约时间、东京时间、巴黎时间、悉尼时间等城市。
世界时间和本地时间的转换
再查看宿主机时间是正确,这样肯定是容器启动时未将时区与宿主机保持同步了,由于测试镜像是由dockfile直接构建,因此问题基本了定准在dockerfile文件上了。 打开dockerfile检查后发现确实确失与宿主机时区同步设置...
错误的删除时区,修复WINDOWS系统时间的时区
服务器时区错误1
禁止修改PC时间和时区,避免因系统时间被篡改带来的损失
js实时获取当地时区时间Time,以及获取时间戳。
主要介绍了java转换时区时间过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
js 根据本地时区获取 当地时间 解决各国时区差
先选择需要转换的时区,然后选择将时间转化为Long值还是将Long值转化为时间。
1. 查看当前时区 # vi /etc/sysconfig/clock 2. 修改设置时区 方法(1) # tzselect 方法(2 仅限于RedHat Linux 和 CentOS) # timeconfig 3. 复制相应的时区文件,替换系统默认时区 # cp /usr/share/zoneinfo/$主...
javascript(jquery) 解决网站时区问题
IDEA连接mysql报时区serverTimezone错误 解决方案
转换北京时间GMT+8成任意时区的时间。工具支持美国夏令时(源码里没有这部分,很久时间前写的实在是没有找到)。