在发布文章的时候我们可能会发现系统的时间比我的时间少了8小时。这是因为Joomla安装的时候使用的是UTC时间,而我们中国在东8区,因此我们的显示的时间会比UTC时间多8小时。解决这个问题的方法就是在全局射中设置时区

1,问题描述

今天在写一个工作流组件的时候,需要将时间精确到分钟。在填写表单的时候,发现默认的时间比我电脑显示的时间少了8个小时。

出错的截图如下:

 

这种问题以前也遇到过,不过大多数的情况是后台的时间显示出错,而这一次是前台JS日历也出现了错误。

2,问题分析

2.1 UTC 世界统一时间

 UTC时间是世界统一时间。中国大陆、中国香港、中国澳门、中国台湾、蒙古国、新加坡、马来西亚、菲律宾、西澳大利亚州的时间与UTC的时差均为+8,也就是UTC+8。

Joomla是默认的时区设置为UTC.一般在安装Joomla完成后,我们需要对这个默认时区进行设置,以便显示正确的时间。

3,解决方案

非常的简单,登录后台,选择全局设置,在服务器选项卡中,选择服务器的时区。如图:

对于中国地区,我们可以选择Hong Kong.(香港)

 4,更多说明


Joomla的时区设置是非常的灵活的,除了能够在全局设置中设置时区外,Joomla也提供对每一个用户设置自己的专有时区。这样网站就可以满足不同国家用户的时区显示了。设置用户的时区需要在后台编辑用户信息(也可以在前台自己编辑),如图:

默认情况下,用户的时区设置是高于服务器的全局时区设置的,如果你在发现设置全局时区后依然显示不正确,那么请进一步检查你当前登录用户的社区设置。

另外,对于开发者,Joomla 默认所有的时间存储都是按照UTC时间存储的,这个和你设置的时区没有关系,你需要自己将这个时间以需要的方式显示

作者: 樱木花道

Joomla程序员,从J1.5到J4.x始终都在做Joomla相关开发定制工作,有超过10年行业经验,国内Joomla扩展开发商ZMAX团队的核心成员

作者网站:ZMAX程序人

评论 (0)

  • 最新在前
  • 最佳在前