Datetime Coldfusion Now()返回错误的分钟数

Datetime Coldfusion Now()返回错误的分钟数,datetime,coldfusion,date-format,Datetime,Coldfusion,Date Format,当使用上述代码时,ColdFusion总是将时间返回为小时后12分钟。其余日期/时间是正确的,但分钟数始终设置为12点 在2011-12-14 14:02:36.020返回的结果是2011-12-14:12:36.020 在2011-12-14 13:27:09.783返回的结果是2011-12-14 13:12:09.783 有人能解释为什么吗?我记得以前读过一些关于这方面的文章,但现在我一片空白。不是现在()不正确,是你的格式问题。您需要像这样使用dateformat()和timefor

当使用上述代码时,ColdFusion总是将时间返回为小时后12分钟。其余日期/时间是正确的,但分钟数始终设置为12点

  • 在2011-12-14 14:02:36.020返回的结果是2011-12-14:12:36.020

  • 在2011-12-14 13:27:09.783返回的结果是2011-12-14 13:12:09.783

有人能解释为什么吗?我记得以前读过一些关于这方面的文章,但现在我一片空白。

不是现在()不正确,是你的格式问题。您需要像这样使用dateformat()和timeformat():

DATEFORMAT(Now(),"yyyy-mm-dd HH:mm:ss.SSS")

在Coldfusion中,
mm
表示月份而不是分钟。使用
nn
代替
mm

dateFormat(Now(),"yyyy-mm-dd") & " " & timeFormat(now(), "HH:mm:ss.SSS")

仅澄清一点-OP看到的是12,因为他没有显示分钟,而是再次显示月份值。值得注意的是
nn
仅与函数(CF10+)一起工作。顾名思义,DateFormat仅适用于日期,因此
nn
不是有效的掩码选项。此外,掩码是一个单参数,即日期和时间掩码之间没有逗号-
“yyyy-mm-dd HH:nn:ss.L”
DATEFORMAT(Now(),"yyyy-mm-dd", "HH:nn:ss.L")