我正在开发一个国际软件,作为一个简单的项目管理软件,我正面临一个问题.此问题与日期/小时和时区有关.
当消息从一个时区发送到另一个时区时,我可以将UTC(GMT)时间存储在我的数据库中,然后根据用户的时区显示不同的时间.但是当我只使用日期时,这不可能完成.
如果我说任务是在3月21日.我是否应该考虑在其他一些国家这个日期可能是20或22?你对这个问题有什么建议?
假设纽约的用户将项目的截止日期设置为"1月26日星期一的任何时间".这意味着"在1月26日星期一0600至1月27日星期二0600"的任何时间"在布鲁塞尔和"从2000年1月25日星期日到2000年1月26日星期一的任何时间"在洛杉矶
所以在星期一26点完成任务在布鲁塞尔和纽约很好,但在洛杉矶太晚了
一种可能的解决方法是永远不要只使用日期.如果未指定时间,则在用户时区指定的日期将其设置为0000小时或2400小时.
用户可能不得不处理奇怪的截止日期/时间,但作为曾经在国际上工作的人说话,它有点与领土相关.