欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP日期和时间函数之系统时区设置

程序员文章站 2022-04-09 15:22:24
...
了解一下时区

整个地球的时区总共划分为24个时区,它们是中时区(零时区)、东1-12区,西1-12区。在每个时区都有自己的本地时间,而且,在同一个时间,每个时区的本地时间会相差1-23个小时,不我们经常说的就是,我们中国这里是白天,而美国那里是夜晚。这就是时区的不同,形成的时间差。例如,英国伦敦的本地时间与我们中国北京的本地时间相差8个小时,在国际无线电通信领域,使用一个统一的时间,我们称为通用协调时间(Universal Time Coordinated)简称UTC,UTC与格林威治标准时间(Greenwich Mean Time ,简称GMT)相同,都与英国伦敦的本地时间相同。

怎么设置时区

在PHP5.0的时候,对date()函数进行了重写,所以,目前的时间日期比系统时间少8个小时,在PHP中,默认的时间是格林威治标准时间,也就是采用的是零时区,我们一般是根据北京时间来确定全国的时间,北京属于东八区,所以要获取本地当前时间必须更改PHP语言的时区设置。

在PHP中,有两种更改时区的方法

第一种:

修改php.ini文件中的设置,找打[data]下的;date.timezone = 选项,去掉前面的引号,修改为:"date.timezone = Asia/Shanghai",然后重新启动Apache服务器

第二种:

在应用程序中,需在使用时间日期函数前添加以下函数

    date_default_timezone_set(timezone);

参数timezone为PHP提供可识别的时区名称,如果时区名称无法识别,系统会采用UTC时区。在PHP手册中提供了各时区名称列表,其中,设置我国北京时间可以使用的时区包括PRC(中华人名*)、Asia/Chongqing(重庆)、Asia/Shanghai(上海)或者Asia/Urumqi(乌鲁木齐),这几个时区名称是等效的。

设置完成以后,date()函数就可以正常使用了,不会再有时间差的问题了。

看一下时区的例子

<?php
header("Content-type:text/html;charset=utf-8");    //设置编码
echo "UTC时间:".date("Y-m-d H:i:s")."<br>";
date_default_timezone_set("PRC");
echo "北京时间:".date("Y-m-d H:i:s")."<br>";
?>

运行的结果为:

PHP日期和时间函数之系统时区设置

PHP日期和时间函数之系统时区设置如果将程序上传到空间中,那么对系统时区设置时,不能修改php.ini文件,只能使用date_default_timezone_set()函数对时区进行设置。

以上就是PHP日期和时间函数之系统时区设置的详细内容,更多请关注其它相关文章!

相关标签: PHP,时间,日期