ISO 8601持续时间P1M的值是多少(以秒为单位?

问题描述 投票:4回答:2

假设我有一个ISO 8601持续时间,表示为"P1M"。通俗地说,这意味着“一个月”。假设开始日期未知,是否存在将其转换为秒数的标准规则?

  • 连续30天,可能是2,592,000。
  • 连续31天,可能是2,678,400。
  • [二月份可能是2,419,200或可能是2,505,600。

我的直觉说,在不知道上下文的情况下,无法将“一个月”解析为确切的秒数,以及这些秒数在日历上的位置。但是,是否有标准规则/惯例以抽象方式计算这些持续时间?

duration iso8601 date-math
2个回答
6
投票

从我发现的ISO 8601文档(第6页-http://xml.coverpages.org/ISO-FDIS-8601.pdf)看来,您是正确的,因为不能确定一个月中的秒数。但是,它确实指出“在某些应用程序中,一个月被视为30天的时间单位”,因此根据您的应用程序,这可能是一种有效的方法。

“日历时间”(年,月等)与“绝对时间”(时,分,秒等)之间的区别有时很重要。例如,有些人可能抱怨如果他们每30天而不是每月支付30年,则几年要还13次抵押贷款。


0
投票

是的,ISO 8601的持续时间取决于上下文。持续时间是一个周期/两个日期之间的时间间隔。

© www.soinside.com 2019 - 2024. All rights reserved.