Jquery中文网 www.jquerycn.cn
Jquery中文网 >  脚本编程  >  php  >  正文 php与时区设置的那些事

php与时区设置的那些事

发布时间:2017-09-09   编辑:www.jquerycn.cn
本文介绍下php中时区设置的方法,这个问题困扰了很多的php新手朋友,分享此文供大家做个参考吧。

php下获取时间的函数是:date,当使用date('H')的时候,php会显的时间和你电脑时间相差8小时(除非你不在中国或灵异事件)。
难道是传说中的每天工作时间限定8小时?

8小时时差,俺们是在东八区。

那么修正呢?哈哈,是不是只要把date('H')的显示+8就行了。我X,你脑抽啊,你是八小时了,要是美国人一看?恩,怎么时间不对啊?难道一个个改啊。

查到时区的资料了吧?顺便看看php.ini(不知道在哪?你Y的php环境怎么配的?告诉过你多少遍了,只相信手动配置),搜索一下"date.timezone",哈哈,知道了吧?date.timezone就是用来设置时区的,so,后面怎么赋值呢?"GMT+8"?

不对,标准的写法是:"Etc/GMT+8",设置一下,重启apache(为啥重启?晕了~~),重新看看,?怎么时间又少了8小时?
这个似乎就是php的问题了,咋在东八区,一般都是写作+8的,可是呢,php认为东是-,西是+(为啥?俺也不知道,问php),so 改成"Etc/GMT-8"就行了,记得要重启apache啊。

麻烦不?每次改都要重启apache不说,而且你还不一定有改php.ini的权限。
php也考虑到这一点,因此在php运行时可以设置"date.timezone",函数是"date_default_timezone_set",对应的"date_default_timezone_get"能得到当前运行的php的设置时区。

好了,在你需要设置时间的代码前调用date_default_timezone_set("Etc/GMT-8");就行了。


有人说了,咋不一定使用时区啊,使用地点也行啊,在http://cn2.php.net/manual/zh/timezones.php就查到所需要的地区设置,好,我告诉你,中国大陆有三个可以选择
Asia/Chongqing ,Asia/Shanghai ,Asia/Urumqi  (依次是:重庆,上海,乌鲁木齐。其实都一样,都是东八区的,为啥没有北京?不知道。)

那代码可以写成date_default_timezone_set("Asia/Shanghai");哈哈。显示正常了。

作者这文采真是奇异,不过细细看完,用来掌握php时区设置的方法,应该还是有些帮助的。

您可能感兴趣的文章:
php设置时区的方法参考
php与时区设置的那些事
Linux PHP MySQL时区设置方法详解
php设置时区的两种方法
php与mysql时区设置的一些总结
fgetcsv的用法和windows与linux下的兼容问题
php时区设置方法总结
php设置时区的解决方案
php入门级教程:PHP大小写问题
浅析php中session和cookie的区别和联系

关键词: php时区设置   
[关闭]