不同的系统接受不同的格式化时间格式。例如。
在服务器上,我将时间存储为Epoch时间。并且喜欢为用户存储一些时间格式,所以他在任何地方都看到相同的格式。但是我无法保存和传递格式字符串,因为它将被不同的使用。我看到了各种各样的解决方案,比如将选择限制在3-5个预定义的选项上,并在每个系统中列出这些选项。
如何以节省成本的方式存储时间格式并向用户显示格式化的时间日期?
-例如
我将服务器上的时间存储为1412063513值。在浏览器中,用户希望将其视为2014-09-30 10:51。因此,他提供了理想的时间格式'YYYY-MM-DD HH:mm‘。我将该格式保存到服务器,但是如果我需要在服务器端(java)使用它,我会遇到问题,因为由于大写字母,它是无效的。当其他系统试图查询和格式化数据时,也会出现同样的问题。
发布于 2014-09-29 10:53:34
支持的格式越多,在处理日期时间格式时必然会出现更多的问题。
如果您打算验证入站值(我肯定这里是显而易见的,但是),我不建议尝试创建您自己的流程来完成这一任务,因为它经常是一个问题的雷区。PHP中的DateTime对象擅长简单地处理各种输入日期格式,允许您验证和定义输出格式,因此允许您以单一格式存储值,正如anom在上面的评论中所建议的那样。momentjs.com也具有类似的功能。我相信还有很多其他人也存在!
如果您需要再次以接收日期的原始格式显示日期时间,我看到的唯一选项是首先标识入站格式,将此格式与原始值一起存储,然后在生成输出内容时再次使用存储格式使用DateTime对象格式方法。
就我个人而言,我会仔细询问用户是否真的需要看到原始格式的输出日期。从长远来看,标准格式将更加一致,也不会让您感到头疼,处理新的格式和错误等等。
https://softwareengineering.stackexchange.com/questions/257525
复制相似问题