DateCompare

説明

2 つの日付の日付時刻の詳細比較を行います。

戻り値

  • date1date2 より前の日付である場合は -1

  • date1date2 と等しい場合は 0

  • date1date2 より後の日付である場合は 1

関数のシンタックス

DateCompare("date1", "date2" [, "datePart"])

関連項目

CreateDateTimeDatePart

パラメータ

パラメータ

説明

date1

日付時刻オブジェクトです。値の範囲は西暦 100 ~ 9999 年です。

date2

日付時刻オブジェクトです。値の範囲は西暦 100 ~ 9999 年です。

datePart

オプション。文字列。比較の精度を表します。

  • s 秒の精度 (デフォルト)

  • n 分の精度

  • h 時の精度

  • d 日の精度

  • m 月の精度

  • yyyy 年の精度

使用方法

日付時刻オブジェクトを文字列として渡すときは、そのオブジェクトを引用符で囲みます。引用符で囲まない場合、そのオブジェクトは日付時刻オブジェクトの数値表示として解釈されます。

<h3>DateCompare Example</h3> 
<p>The DateCompare function compares two date/time values. 
<cfif IsDefined("FORM.date1")> 
    <cfif IsDate(FORM.date1) and IsDate(FORM.date2)> 
        <cfset comparison = DateCompare(FORM.date1, FORM.date2, FORM.precision)> 
 
<!--- Switch on the variable to give various responses. ---> 
        <cfswitch expression = #comparison#> 
            <cfcase value = "-1"> 
                <h3><cfoutput>#DateFormat(FORM.date1)#  
                #TimeFormat(FORM.date1)#</cfoutput> (Date 1) is 
                earlier than <cfoutput>#DateFormat(FORM.date2)# 
                #TimeFormat(FORM.date2)#</cfoutput> (Date 2)</h3> 
                <I>The dates are not equal</I> 
            </cfcase> 
            <cfcase value = "0"> 
                <h3><cfoutput>#DateFormat(FORM.date1)# 
                #TimeFormat(FORM.date1)#</cfoutput> (Date 1) is equal 
                to <cfoutput>#DateFormat(FORM.date2)# 
                #TimeFormat(FORM.date2)#</cfoutput> (Date 2)</h3> 
                <I>The dates are equal!</I> 
            </cfcase> 
            <cfcase value = "1"> 
                <h3><cfoutput>#DateFormat(FORM.date1)# 
                #TimeFormat(FORM.date1)#</cfoutput> (Date 1) is later 
                than <cfoutput>#DateFormat(FORM.date2)# 
                #TimeFormat(FORM.date2)#</cfoutput> (Date 2)</h3> 
                <I>The dates are not equal</I> 
            </cfcase> 
            <CFDEFAULTCASE> 
                <h3>This is the default case</h3> 
            </CFDEFAULTCASE> 
        </cfswitch> 
    <cfelse> 
        <h3>Enter two valid date values</h3> 
    </cfif> 
</cfif> 
 
<form action = "datecompare.cfm" method="post"> 
<hr size = "2" color = "#0000A0"> 
<p>Date 1 
<br><input type = "Text" name = "date1"  
        value = "<cfoutput>#DateFormat(Now())# #TimeFormat(Now())# 
</cfoutput>"> 
<p>Date 2 
<br><input type = "Text" name = "date2"  
        value = "<cfoutput>#DateFormat(Now())# #TimeFormat(Now())# 
</cfoutput>"> 
<p>Specify precision to the: 
<br><select name = "precision"> 
            <option value = "s"> 
                Second 
            </option>     
            <option value = "n"> 
                Minute 
            </option>     
            <option value = "h"> 
                Hour 
            </option>     
            <option value = "d"> 
                Day 
            </option> 
            <option value = "m"> 
                Month 
            </option>     
            <option value = "yyyy"> 
                Year 
            </option> 
    </select> 
<p><input type = "Submit" value = "Compare these dates" name = "">  
<input type = "reset"> 
</form>