这篇文章将为大家详细讲解有关如何解决php中date函数格式化错误的问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
php date函数格式化错误的解决办法:1、修改php.ini配置文件;2、加上“date_default_timezone_set(timezone_identifier)”函数。
本文操作环境:windows7系统、PHP7.1版,DELL G3电脑
php date函数格式化错误怎么办?date()函数取得时间错误?
通过date()函数获取时间后,你会发现小时时间不对,比现在的时间小8个小时,无论用H,还是用h都一样,这个是因为当前获取的是格林威治时间,与北京时间相差8小时。
解决方法如下:
修改php.ini配置文件
打开php.ini文件,一般在php配置根目录下,找到其中的 ;date.timezone,删掉前面的分号,并改为date timezone = PRC。保存,重启Apahce服务即可(有时用restart会有问题,先stop然后start就行了)。
加上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,不然会报错。
下面是所有的时区标识符:(供大家参考)
CETCST6CDTCubaEETEgyptEireESTEST5EDTEtc/GMTEtc/GMT+0Etc/GMT+1Etc/GMT+10Etc/GMT+11Etc/GMT+12Etc/GMT+2Etc/GMT+3Etc/GMT+4Etc/GMT+5Etc/GMT+6Etc/GMT+7Etc/GMT+8Etc/GMT+9Etc/GMT-0Etc/GMT-1Etc/GMT-10Etc/GMT-11Etc/GMT-12Etc/GMT-13Etc/GMT-14Etc/GMT-2Etc/GMT-3Etc/GMT-4Etc/GMT-5Etc/GMT-6Etc/GMT-7Etc/GMT-8Etc/GMT-9Etc/GMT0Etc/GreenwichEtc/UCTEtc/UniversalEtc/UTCEtc/ZuluFactoryGBGB-EireGMTGMT+0GMT-0GMT0GreenwichHongkongHSTIcelandIranIsraelJamaicaJapanKwajaleinLibyaMETMSTMST7MDTNavajoNZNZ-CHATPolandPortugalPRCPST8PDTROCROKSingaporeTurkeyUCTUniversalUTCW-SUWET
关于“如何解决php中date函数格式化错误的问题”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。