Coldfusion Railo DateFormat的结果不好?

Coldfusion Railo DateFormat的结果不好?,coldfusion,railo,Coldfusion,Railo,我正在将文件从Coldfusion 10迁移到Railo(使用Railo Express)。我发现DateFormat函数有一个奇怪的行为。运行以下代码: <cfoutput> #Dateformat(now(),'yyyy-mm-dd hh:mm:ss')# </cfoutput> 这很好 在railo,我得到: 2014-12-09 hh:12:ss 我不明白发生了什么事。所以有一个恰当的答案(达乌·迪迪和利都在评论中提供了重要信息,但不是作为答案): 在Ra

我正在将文件从Coldfusion 10迁移到Railo(使用Railo Express)。我发现DateFormat函数有一个奇怪的行为。运行以下代码:

<cfoutput>
  #Dateformat(now(),'yyyy-mm-dd hh:mm:ss')#
</cfoutput>
这很好

在railo,我得到:

2014-12-09 hh:12:ss

我不明白发生了什么事。

所以有一个恰当的答案(达乌·迪迪和利都在评论中提供了重要信息,但不是作为答案):

在Railo和ColdFusion中,
dateFormat()
仅格式化日期。IE:不是时间成分

您需要的是:


#dateTimeformat(现在(),'yyyy-mm-dd hh:nn:ss')#
还要注意,分钟的掩码字符不是
m
,而是
n
(以消除分钟与月份之间的歧义)


您可能还想在几个小时内使用
HH
,否则您的AM和PM时间不明确。或者您可以在时间部分后面加上
tt
。不过,使用
HH
更接近标准,因此可能更可取。

因此对此有一个正确的答案(da_didi和Leigh都在评论中加入了重要信息,但不是作为答案):

在Railo和ColdFusion中,
dateFormat()
仅格式化日期。IE:不是时间成分

您需要的是:


#dateTimeformat(现在(),'yyyy-mm-dd hh:nn:ss')#
还要注意,分钟的掩码字符不是
m
,而是
n
(以消除分钟与月份之间的歧义)


您可能还想在几个小时内使用
HH
,否则您的AM和PM时间不明确。或者您可以在时间部分后面加上
tt
。使用
HH
更接近标准,因此可能更可取。

它是DateFormat,而不是DateTimeFormat。您可以使用TimeFormat…使用DateTimeFormat,谢谢@da_didi你应该写下来作为一个答案Michael-FWIW,你的原始代码在CF10中也不能正常工作,出于同样的原因。许多人忽视了这样一个事实,即
hh:mm:ss
中的
mm
被解释为“月”数,而不是“分钟”。所以这个掩码的结果是错误的,它是DateFormat,而不是DateTimeFormat。您可以使用TimeFormat…使用DateTimeFormat,谢谢@da_didi你应该写下来作为一个答案Michael-FWIW,你的原始代码在CF10中也不能正常工作,出于同样的原因。许多人忽视了这样一个事实,即
hh:mm:ss
中的
mm
被解释为“月”数,而不是“分钟”。所以这个面具的结果是错误的。
2014-12-09 hh:12:ss
<cfoutput>
    #dateTimeformat(now(),'yyyy-mm-dd hh:nn:ss')#
</cfoutput>