首页 >后端开发 >PHP问题 >php date函数格式化错误怎么办

php date函数格式化错误怎么办

藏色散人
藏色散人原创
2021-07-02 09:31:372258浏览

php date函数格式化错误的解决办法:1、修改php.ini配置文件;2、加上“date_default_timezone_set(timezone_identifier)”函数。

php date函数格式化错误怎么办

本文操作环境:windows7系统、PHP7.1版,DELL G3电脑

php date函数格式化错误怎么办?date()函数取得时间错误?

通过date()函数获取时间后,你会发现小时时间不对,比现在的时间小8个小时,无论用H,还是用h都一样,这个是因为当前获取的是格林威治时间,与北京时间相差8小时。

解决方法如下:

1、修改php.ini配置文件

打开php.ini文件,一般在php配置根目录下,找到其中的 ;date.timezone,删掉前面的分号,并改为date timezone = PRC。保存,重启Apahce服务即可(有时用restart会有问题,先stop然后start就行了)。

2、加上date_default_timezone_set(timezone_identifier)函数

这个函数的意思是,设置当前时区,对时间进行初始化,在页头或获取时间语句前加上这句话。

例如:

date_default_timezone_set(PRC);
echo date("Y-m-d H-i-s");

参数如下设置:

date_default_timezone_set(PRC) –设置为北京时间,PRC代表中华人民共和国

date_default_timezone_set(‘Asia/Shanghai’) –设置为上海时间,大陆可用的还有‘Chongqi’(重庆)、‘Urumqi’(乌鲁木齐)同样可以的

港台地区可用:Asia/Macao ,Asia/Hong_Kong ,Asia/Taipei (依次为澳门,香港,台北) 

新加坡地区:Asia/Singapore   (好像就是没看到北京的)

此函数永远会返回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 date函数格式化错误怎么办的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn