|
-- ASP日期和時(shí)間函數(shù)..... ASP日期和時(shí)間函數(shù).....[頂樓]在腳本中增加日期和時(shí)間函數(shù) <%=year(now)%>年<%=month(now)%>月<%=day(now)%>日 <%=weekdayname(weekday(now))%> 顯示: 今日是: 2003年10月31日 星期五 VBScript有許多函數(shù),使你可以得到各種格式的日期和時(shí)間。你已經(jīng)用過了這些函數(shù)中的一個(gè)。你可以用函數(shù)NOW返回當(dāng)前的日期和時(shí)間: At the tone,the time will bi: <%=NOW%> 你應(yīng)該注意,返回的日期和時(shí)間是你的Web服務(wù)器的系統(tǒng)時(shí)鐘的日期和時(shí)間。如果身處紐約的某個(gè)人在看你的網(wǎng)頁,他看到的日期和時(shí)間與她當(dāng)?shù)氐娜掌诤蜁r(shí)間也許是不一至的。 函數(shù)NOW同時(shí)返回日期和時(shí)間。如果你只想返回當(dāng)前日期,你可以使用函數(shù)DATE。如果你只想返回當(dāng)前時(shí)間,你可以使用函數(shù)TIME。例如: The date is :<%=DATE%> The time is :<%=TIME%> 操作日期 使用函數(shù)MONTH(),DAY(),WEEKDAY(),和YEAR(),你可以把一個(gè)日期分割成更小的部分。所有這些函數(shù)都以一個(gè)日期表達(dá)式作為參數(shù),并返回一個(gè)數(shù)字。這里有一個(gè)如何使用這些函數(shù)的例子: The Month is :<%=MONTH(DATE)%> <BR> The Day is : <%=DAY(DATE)%> <BR> The weekday is :<%=WEEKDAY(DATE)%> <BR> The year is :<%=YEAR(DATE)%> 假設(shè)當(dāng)前日期是1997年8月9日,星期三。如果你把上面的例子包含在一個(gè)ASP網(wǎng)頁中,在瀏覽器中將顯示如下的文字: The Month is : 7 The Day is : 9 The weekday is : 4 The year is : 1997 注意函數(shù)weekday()假定一個(gè)星期的第一天是星期日。如果你想把星期一作為一周的第一天,你可以使用如下的語句: The weekday is :<%=weekday(DATE,vbWednesday)%> 你可以把任何一天作為一周的第一天。要指定一周的第一天是星期幾,只要用vbSunday,vbMonday,vbTusday,vbWednesday,vbThurday,vbFriday或vbSaturday代替函數(shù)WEEKDAY()的第二個(gè)參數(shù)即可。 你不單可以用函數(shù)DATE作為這些函數(shù)的參數(shù)。你也可以提供一個(gè)日期字符串或者一個(gè)日期常數(shù)作為參數(shù),如下例所示: The weekday is :<%=WEEKDAY(#12/25/2000#)%> The weekday is :<%=WEEKDAY(“12-25-2000”)%> 這兩個(gè)函數(shù)都返回2000年圣誕節(jié)這一天是星期幾。(這也許使你不習(xí)慣:返回值是2,代表星期一。)表達(dá)式#12/25/2000#是一個(gè)日期常數(shù),日期常數(shù)總是括在字符’#’中。表達(dá)式”12-25-2000”是一個(gè)日期字符串。用這兩種方法為函數(shù)提供一個(gè)日期都是可行的。 要以更加易讀的形式返回月份和星期幾,你可以使用函數(shù)WEEKDAYNAME()或MONTHNAME()。這兩個(gè)函數(shù)返回的是字符串。這里有一個(gè)使用這兩個(gè)函數(shù)的例子: The month is :<%=MONTHNAME(MONTH(DATE))%> The weekday is:<%=WEEKDAYNAME(WEEKDAY(DATE))%> 假設(shè)當(dāng)前日期是八月,星期三。在這種情況下,第一個(gè)函數(shù)將返回字符串July,第二個(gè)函數(shù)返回字符串Wednesday。你可以把1到12之間的任何整數(shù)作為函數(shù)MONTHNAME()的參數(shù),你可以把1到7之間的任何整數(shù)作為函數(shù)WEEKDAYNAME()的參數(shù)。 在缺省情況下,這兩個(gè)函數(shù)不會(huì)縮寫返回的字符串。函數(shù)MONTHNAME()返回的是July而不是Jul,函數(shù)WEEKDAYNAME()返回的是Wednesday而不是Wed。然而,通過指定第二個(gè)參數(shù)為TRUE,你可以強(qiáng)制這兩個(gè)函數(shù)返回縮寫的字符串。(TRUE表示要縮寫,F(xiàn)ALSE表示不縮寫。)如下例所示: The month is: <%=MONTHNAME(MONTH(DATE),TRUE)%> The weekday is: <%=WEEKDAYNAME(WEEKDAY(DATE),TRUE)%> 操作時(shí)間 你也可以把時(shí)間分割成更小的部分。通過函數(shù)HOUR(),MINUTE(),和SECOND(),你可以返回時(shí)間的不同部分。下面是使用這些函數(shù)的一些例子以及可能的返回值: The hour is:<%=HOUR(TIME)%> The hour is:21 The minute is:<%=MINUTE(TIME)%> The minute is:39 The second is:<%=SECOND(TIME)%> The second is:34 函數(shù)HOUR()返回一個(gè)0到23之間的整數(shù)(0點(diǎn)是午夜后的一個(gè)小時(shí))。函數(shù)MINUTE()返回一個(gè)0到59之間的整數(shù)。函數(shù)SECOND()也返回一個(gè)0到59之間的整數(shù)。 你不單可以用函數(shù)TIME作為這些函數(shù)的參數(shù),你還可以提供一個(gè)時(shí)間常數(shù)或時(shí)間字符串作為參數(shù)。下面的兩個(gè)例子都從時(shí)間中抽取分鐘數(shù)34: The minute is:<%=MINUTE(#12:34:19#%> The minute is:34 The minute is:<%=MINUTE(“12:34:23”)%> The minute is:34 比較日期和時(shí)間 VBScript有兩個(gè)用于比較日期和時(shí)間的函數(shù)。你可以用函數(shù)DATEADD()對(duì)日期和時(shí)間作加法,用函數(shù)DATEDIFF()計(jì)算兩個(gè)日期或時(shí)間的間隔。下面是使用函數(shù)DATEADD()的一些例子: Your registration will exprie on <%=DATEADD(“ww”,6,DATE)%> Exactly fifteen seconds from now,at<%=DATEADD(“s”,15,TIME)%>your computer will melt. 第一個(gè)例子返回比當(dāng)前日期晚六個(gè)星期的日期,第二個(gè)例子返回15秒鐘后的時(shí)間中的秒數(shù)。 函數(shù)DATEADD()有三個(gè)參數(shù): 第一個(gè)參數(shù)指定一個(gè)時(shí)間間隔。(見表8.2) 第二個(gè)參數(shù)時(shí)間間隔的倍數(shù)因子。 最后,第三個(gè)參數(shù)是一個(gè)日期或時(shí)間的變量或常量。 表8.2 日期和時(shí)間間隔 間隔 描述 yyyy 年 q 季度 m 月 y 天 d 天 w 天 ww 星期 h 小時(shí) m 分鐘 s 秒 你可以用函數(shù)DATEDIFF確定兩個(gè)日期或時(shí)間之間的間隔。下面的例子演示了如何使用這個(gè)函數(shù): You have been a member for <%=DATEDIFF(“d”,”1/1/1988”,DATE)%> days. There are exactly <%=DATEDIFF(“s”,DATE,”1/1/2000”)%> seconds remaining until the year 2000. 第一個(gè)例子中的DATEDIFF()函數(shù)返回1/1/1988與當(dāng)前日期之間的天數(shù)。第二個(gè)例子中的DATEDIFF()返回當(dāng)前日期到2000年之間的秒數(shù)。 函數(shù)DATEDIFF()有三個(gè)參數(shù): 第一個(gè)參數(shù)是一個(gè)日期或時(shí)間間隔(參見表8.2). 另兩個(gè)參數(shù)是兩個(gè)日期。為了避免出現(xiàn)負(fù)數(shù),第一個(gè)日期參數(shù)應(yīng)該比第二個(gè)早。(如果該函數(shù)返回一個(gè)負(fù)數(shù),你應(yīng)該知道第一個(gè)日期比第二個(gè)日期晚。) 格式化日期和時(shí)間 你可以規(guī)定一個(gè)日期或時(shí)間的顯示格式。在缺省情況下,當(dāng)你通過函數(shù)DATE顯示一個(gè)日期時(shí),它看起來是這樣的: 7/9/97 但是,你可以用函數(shù)FORMATDATETIME()顯示一個(gè)基于你計(jì)算機(jī)的區(qū)域設(shè)置的日期。你可以把一個(gè)日期顯示為短日期格式或長日期格式。 注意 從控制面板中選擇區(qū)域設(shè)置圖標(biāo),可以為你的計(jì)算機(jī)進(jìn)行區(qū)域設(shè)置。你可以通過區(qū)域設(shè)置來指定日期和時(shí)間的長格式或短格式。 下面的例子演示了如何控制長日期格式和短日期格式的顯示: Short Date:<%=FORMATDATETIME(DATE,vbShortDate)%> Long Date:<%=FORMATDATETIME(DATE,vbLongDate)%> 當(dāng)根據(jù)英國(美國)區(qū)域設(shè)置顯示日期時(shí),日期顯示為如下的格式: Short Date:7/9/97 Long Date:Wednesday,July 09,1997 注意短日期格式的顯示與不做任何格式化時(shí)完全相同。在缺省情況下,日期以短日期格式顯示。 你也可以用函數(shù)FORMATDATETIME()格式化一個(gè)時(shí)間。同樣,你可以指定一個(gè)時(shí)間顯示為長格式或短格式。當(dāng)用短格式顯示時(shí)間時(shí),將使用24小時(shí)時(shí)鐘(軍事時(shí)間)。下面的例子演示了如何用FORMATDATETIME()函數(shù)操作時(shí)間: Short Time:<%=FORMATDATETIME(TIME,vbShortTime)%> Long Time:<%=FORMATDATETIME(TIME,vbLongTime)%> 當(dāng)以英國(美國)區(qū)域設(shè)置顯示時(shí)間時(shí),時(shí)間的格式如下: Short Time:03:20 Long Time:3:20:08 AM |
|
|