在ColdFusion中,我可以使用CreateDate()
獲得當前沒有時間的日期(技術上時間設置爲00:00:00)。這對比較兩個日期非常有用,無論時間如何。但是,這似乎效率低下。例如,要獲得今天的日期,我會寫:在Coldfusion中獲取無日期日期的較短方法
CreateDate(Year(Now()),Month(Now()),Day(Now())
有沒有更高效的方法來做到這一點?
在ColdFusion中,我可以使用CreateDate()
獲得當前沒有時間的日期(技術上時間設置爲00:00:00)。這對比較兩個日期非常有用,無論時間如何。但是,這似乎效率低下。例如,要獲得今天的日期,我會寫:在Coldfusion中獲取無日期日期的較短方法
CreateDate(Year(Now()),Month(Now()),Day(Now())
有沒有更高效的方法來做到這一點?
可以使用dateCompare
與d
一個第三個參數,只比較日期本身
dateCompare(date1, date2, 'd')
'Now()'不會返回當前時間嗎? –
是的,我爲什麼說「如果你不在乎時間」 –
啊,我的誤解。但是,從某種意義上說,我確實在意時間。比較'Now()'和當前日期應該是相等的。因此,今天是2017年3月3日,無論一天中的哪一天,'CreateDate(2017,3,21)'應該等於'MissingFunction(Now())'。所以我要求的是編寫'MissingFunction()'的最有效方法。 –
<cfset myVar = now()>
是獲取當前日期爲變量的最快方法。是的,它也有時間,但是你以後忽略時間。 EX:#dateFormat(myVar, 'short')#
,以上爲您的使用....
DateDiff('datepart', myVar, someOtherDateVar)
更多信息:https://helpx.adobe.com/coldfusion/cfml-reference/coldfusion-functions/functions-c-d/DateDiff.html
'日期格式(NOW(), 'YYYY-MM-DD')' - ColdFusion的非常好在從字符串中讀取日期時,無論格式如何,只要將其稱爲日期,都可以理解某些內容。我確信有人會與我的採取不是最佳實踐,但如果你尋找更少的步驟,它會工作。 – TRose
有趣的建議@Tose。我測試了這個和邏輯工作,但它使用DateFormat()而不是CreateDate()慢了4倍。也許CreateDate()是最重要的。 –
您可以隨時創建一個UDF來完成上述操作。然後在代碼的其餘部分使用UDF。 – ale