PHP中应该怎样去完成时区的设置?
在之前的文章中给大家带来了《带你一起了解PHP的错误类型和错误级别》,其中详细介绍了PHP中的错误类型和错误级别,本篇文章我们一起来看一下,我们应该怎样在PHP中设置时区,希望对大家有帮助!
在我们的日常生活中,时间是很重要并且必不可少的,同样的在PHP中也是一样的,在我们的日常开发中,有时用到时间需要储存起来记录某件事的时候,我们应该怎样去设置时间呢?
在PHP中可以通过日期的时间函数来获取日期和时间,PHP中的日期和时间函数是通过服务器的时间来设置,服务器的时间默认是的是格林尼治时间。
PHP中时区的设置
想要更改PHP中的时间为本地时间的话需要更改PHP语言中的时区设置。在PHP中设置语言的时区有三种方法,接下来我们一起来看看:
-
在配置文件中配置
PHP中的配置文件就是php.ini文件,至于怎么找到这个文件,我在之前的《PHP如何上传文件?看完就明白了!》中讲到过,大家感兴趣的话可以点击查看一下。找到php.ini之后,在文件中查找date.timezone,找到如下结果:
其中Asia/Shangha表示的就是时区,也叫做时区标识符。这样的时区标识符还有很多,给大家列举一些常用的时区标识符:
Asia/Shanghai —— 上海
Asia/Chongqing —— 重庆
Asia/Hong_Kong —— 香港
Asia/Macao —— 澳门
Asia/Taipei —— 台北
PRC —— 中国时区
需要注意的是,当我们时区设置完成之后需要重启一下服务器,失去的设置才生效。
-
使用
date_default_timezone_set()
函数设置时区
在PHP中,date_default_timezone_set() 函数能够所有的日期函数设置一个默认时区,它的语法格式如下:
date_default_timezone_set(时区标识符)
示例如下:
<?php date_default_timezone_set('Asia/Hong_Kong'); echo '香港的当前时间为:'.date('Y-m-d H:i:s',time()).'<br>'; date_default_timezone_set('Asia/Macao'); echo '澳门的当前时间为:'.date('Y-m-d H:i:s',time()).'<br>'; date_default_timezone_set('Asia/Shanghai'); echo '上海的当前时间为:'.date('Y-m-d H:i:s',time()); ?>
输出结果:
由上述结果可以看出,通过date_default_timezone_set() 函数能够设置一个时区。
-
使用
ini_set()
函数设置时区
PHP 中的 ini_set() 函数可以设置指定配置选项的值,它会在脚本运行时保持新的值,并在脚本结束时恢复。函数的语法格式如下:
ini_set(待修改的选项, 该选项新的值)
示例如下:
<?php ini_set('date.timezone', 'GMT'); echo '当前的格林尼治时间为:'.date('Y-m-d H:i:s',time()).'<br>'; ini_set('date.timezone', 'Asia/Hong_Kong'); echo '香港的当前时间为:'.date('Y-m-d H:i:s',time()).'<br>'; ini_set('date.timezone', 'Asia/Shanghai'); echo '上海的当前时间为:'.date('Y-m-d H:i:s',time()); ?>
输出结果:
由上市示例看出,当脚本恢复时,重新配置一个新的选项,设置的时区选项会保持新的值。
大家如果感兴趣的话,可以点击《PHP视频教程》进行更多关于PHP知识的学习。