Heim  >  Artikel  >  Backend-Entwicklung  >  PHP正确设置时区为北京时间的方法

PHP正确设置时区为北京时间的方法

WBOY
WBOYOriginal
2016-06-20 13:02:227136Durchsuche

php新手经常会在echo 当前时间的时候发现打印出来的时间和当前时间相差8个小时的问题,这个错误的原因是因为没有设置php的当前时区,PHP默认获取的时间是格林威治标准时间,从地理学角度上来讲这个地方的时间是和北京的时间是相差8个小时的,我以前也经常碰到过这种问题,今天就这个问题总结了php中设置时区的几种方法,希望能帮到所有遇到同样问题的兄弟们额!

1、修改apache服务器的配置文件php.ini,在php.ini中找到 data.timezone 这行,去掉它前面的;号,然后修改为 

data.timezone = "Asia/Shanghai" 或者 date.timezone = "PRC" 即可。

2、直接在PHP 5以上版本apache服务器上的程序代码中使用函数 ini_set('date.timezone','Asia/Shanghai'),或者也可以写为 date_default_timezone_set('Asia/Shanghai'),效果是一样的。下面列出几个中国内陆的常用时区标识符:

Asia/Shanghai – 上海 

Asia/Chongqing – 重庆 
Asia/Urumqi – 乌鲁木齐 
Asia/Hong_Kong – 香港 

Asia/Macao – 澳门

利用php函数设置时区的方法:

ini_set('date.timezone','Asia/Shanghai'); //这里设置的是上海时区

date_default_timezone_set("Etc/GMT-8");//这里设置的是比林威治标准时间快8小时
date_default_timezone_set("Etc/GMT+8");//这里设置的是比林威治标准时间慢8小时
date_default_timezone_set('PRC'); //设置中华人民共和国时区

 


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn