📄 8-5.cfm.htm
字号:
<html>
<head>
<title>在脚本中增加日期和时间函数</title>
<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb_2312-80">
<meta NAME="GENERATOR" CONTENT="Microsoft FrontPage 3.0">
</head>
<body>
<font FACE="宋体" SIZE="5"><b>
<p ALIGN="JUSTIFY">在脚本中增加日期和时间函数</p>
</b></font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">VBScript有许多函数,使你可以得到各种格式的日期和时间。你已经用过了这些函数中的一个。你可以用函数NOW返回当前的日期和时间:</p>
<p ALIGN="JUSTIFY">At the tone,the time will bi: <%=NOW%></p>
<p ALIGN="JUSTIFY">你应该注意,返回的日期和时间是你的Web服务器的系统时钟的日期和时间。如果身处纽约的某个人在看你的网页,他看到的日期和时间与她当地的日期和时间也许是不一至的。</p>
<p ALIGN="JUSTIFY">函数NOW同时返回日期和时间。如果你只想返回当前日期,你可以使用函数DATE。如果你只想返回当前时间,你可以使用函数TIME。例如:</p>
<p ALIGN="JUSTIFY">The date is :<%=DATE%></p>
<p ALIGN="JUSTIFY">The time is :<%=TIME%></p>
</font><font FACE="宋体"><b>
<p ALIGN="JUSTIFY">操作日期</p>
</b></font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">使用函数MONTH(),DAY(),WEEKDAY(),和YEAR(),你可以把一个日期分割成更小的部分。所有这些函数都以一个日期表达式作为参数,并返回一个数字。这里有一个如何使用这些函数的例子:</p>
<p ALIGN="JUSTIFY">The Month is :<%=MONTH(DATE)%></p>
<p ALIGN="JUSTIFY"><BR></p>
<p ALIGN="JUSTIFY">The Day is : <%=DAY(DATE)%></p>
<p ALIGN="JUSTIFY"><BR></p>
<p ALIGN="JUSTIFY">The weekday is :<%=WEEKDAY(DATE)%></p>
<p ALIGN="JUSTIFY"><BR></p>
<p ALIGN="JUSTIFY">The year is :<%=YEAR(DATE)%></p>
<p ALIGN="JUSTIFY">假设当前日期是1997年8月9日,星期三。如果你把上面的例子包含在一个ASP网页中,在浏览器中将显示如下的文字:</p>
<p ALIGN="JUSTIFY">The Month is : 7</p>
<p ALIGN="JUSTIFY">The Day is : 9</p>
<p ALIGN="JUSTIFY">The weekday is : 4</p>
<p ALIGN="JUSTIFY">The year is : 1997</p>
<p ALIGN="JUSTIFY">注意函数weekday()假定一个星期的第一天是星期日。如果你想把星期一作为一周的第一天,你可以使用如下的语句:</p>
<p ALIGN="JUSTIFY">The weekday is :<%=weekday(DATE,vbWednesday)%></p>
<p ALIGN="JUSTIFY">你可以把任何一天作为一周的第一天。要指定一周的第一天是星期几,只要用vbSunday,vbMonday,vbTusday,vbWednesday,vbThurday,vbFriday或vbSaturday代替函数WEEKDAY()的第二个参数即可。</p>
<p ALIGN="JUSTIFY">你不单可以用函数DATE作为这些函数的参数。你也可以提供一个日期字符串或者一个日期常数作为参数,如下例所示:</p>
<p ALIGN="JUSTIFY">The weekday is :<%=WEEKDAY(#12/25/2000#)%></p>
<p ALIGN="JUSTIFY">The weekday is :<%=WEEKDAY(</font><font SIZE="3">“</font><font
FACE="宋体" SIZE="3">12-25-2000</font><font SIZE="3">”</font><font FACE="宋体"
SIZE="3">)%></p>
<p ALIGN="JUSTIFY">这两个函数都返回2000年圣诞节这一天是星期几。(这也许使你不习惯:返回值是2,代表星期一。)表达式#12/25/2000#是一个日期常数,日期常数总是括在字符</font><font
SIZE="3">’</font><font FACE="宋体" SIZE="3">#</font><font SIZE="3">’</font><font
FACE="宋体" SIZE="3">中。表达式</font><font SIZE="3">”</font><font FACE="宋体"
SIZE="3">12-25-2000</font><font SIZE="3">”</font><font FACE="宋体" SIZE="3">是一个日期字符串。用这两种方法为函数提供一个日期都是可行的。</p>
<p ALIGN="JUSTIFY">要以更加易读的形式返回月份和星期几,你可以使用函数WEEKDAYNAME()或MONTHNAME()。这两个函数返回的是字符串。这里有一个使用这两个函数的例子:</p>
<p ALIGN="JUSTIFY">The month is :<%=MONTHNAME(MONTH(DATE))%></p>
<p ALIGN="JUSTIFY">The weekday is:<%=WEEKDAYNAME(WEEKDAY(DATE))%></p>
<p ALIGN="JUSTIFY">假设当前日期是八月,星期三。在这种情况下,第一个函数将返回字符串July,第二个函数返回字符串Wednesday。你可以把1到12之间的任何整数作为函数MONTHNAME()的参数,你可以把1到7之间的任何整数作为函数WEEKDAYNAME()的参数。</p>
<p ALIGN="JUSTIFY">在缺省情况下,这两个函数不会缩写返回的字符串。函数MONTHNAME()返回的是July而不是Jul,函数WEEKDAYNAME()返回的是Wednesday而不是Wed。然而,通过指定第二个参数为TRUE,你可以强制这两个函数返回缩写的字符串。(TRUE表示要缩写,FALSE表示不缩写。)如下例所示:</p>
<p ALIGN="JUSTIFY">The month is: <%=MONTHNAME(MONTH(DATE),TRUE)%></p>
<p ALIGN="JUSTIFY">The weekday is: <%=WEEKDAYNAME(WEEKDAY(DATE),TRUE)%></p>
</font><font FACE="宋体"><b>
<p ALIGN="JUSTIFY">操作时间</p>
</b></font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">你也可以把时间分割成更小的部分。通过函数HOUR(),MINUTE(),和SECOND(),你可以返回时间的不同部分。下面是使用这些函数的一些例子以及可能的返回值:</p>
<p ALIGN="JUSTIFY">The hour is:<%=HOUR(TIME)%></p>
<p ALIGN="JUSTIFY">The hour is:21</p>
<p ALIGN="JUSTIFY">The minute is:<%=MINUTE(TIME)%></p>
<p ALIGN="JUSTIFY">The minute is:39</p>
<p ALIGN="JUSTIFY">The second is:<%=SECOND(TIME)%></p>
<p ALIGN="JUSTIFY">The second is:34</p>
<p ALIGN="JUSTIFY">函数HOUR()返回一个0到23之间的整数(0点是午夜后的一个小时)。函数MINUTE()返回一个0到59之间的整数。函数SECOND()也返回一个0到59之间的整数。</p>
<p ALIGN="JUSTIFY">你不单可以用函数TIME作为这些函数的参数,你还可以提供一个时间常数或时间字符串作为参数。下面的两个例子都从时间中抽取分钟数34:</p>
<p ALIGN="JUSTIFY">The minute is:<%=MINUTE(#12:34:19#%></p>
<p ALIGN="JUSTIFY">The minute is:34</p>
<p ALIGN="JUSTIFY">The minute is:<%=MINUTE(</font><font SIZE="3">“</font><font
FACE="宋体" SIZE="3">12:34:23</font><font SIZE="3">”</font><font FACE="宋体"
SIZE="3">)%></p>
<p ALIGN="JUSTIFY">The minute is:34</p>
</font><font FACE="宋体"><b>
<p ALIGN="JUSTIFY">比较日期和时间</p>
</b></font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">VBScript有两个用于比较日期和时间的函数。你可以用函数DATEADD()对日期和时间作加法,用函数DATEDIFF()计算两个日期或时间的间隔。下面是使用函数DATEADD()的一些例子:</p>
<p ALIGN="JUSTIFY">Your registration will exprie on <%=DATEADD(</font><font SIZE="3">“</font><font
FACE="宋体" SIZE="3">ww</font><font SIZE="3">”</font><font FACE="宋体" SIZE="3">,6,DATE)%></p>
<p ALIGN="JUSTIFY">Exactly fifteen seconds from now,at<%=DATEADD(</font><font SIZE="3">“</font><font
FACE="宋体" SIZE="3">s</font><font SIZE="3">”</font><font FACE="宋体" SIZE="3">,15,TIME)%>your
computer</p>
<p ALIGN="JUSTIFY">will melt.</p>
<p ALIGN="JUSTIFY">第一个例子返回比当前日期晚六个星期的日期,第二个例子返回15秒钟后的时间中的秒数。</p>
<p ALIGN="JUSTIFY">函数DATEADD()有三个参数:</p>
<blockquote>
<blockquote>
<p ALIGN="JUSTIFY">第一个参数指定一个时间间隔。(见表8.2)</p>
<p ALIGN="JUSTIFY">第二个参数时间间隔的倍数因子。</p>
<p ALIGN="JUSTIFY">最后,第三个参数是一个日期或时间的变量或常量。</p>
</blockquote>
</blockquote>
<p ALIGN="JUSTIFY">表8.2 日期和时间间隔</p>
<p ALIGN="JUSTIFY">间隔 描述</p>
<p ALIGN="JUSTIFY">yyyy 年</p>
<p ALIGN="JUSTIFY">q 季度</p>
<p ALIGN="JUSTIFY">m 月</p>
<p ALIGN="JUSTIFY">y 天</p>
<p ALIGN="JUSTIFY">d 天</p>
<p ALIGN="JUSTIFY">w 天</p>
<p ALIGN="JUSTIFY">ww 星期</p>
<p ALIGN="JUSTIFY">h 小时</p>
<p ALIGN="JUSTIFY">m 分钟</p>
<p ALIGN="JUSTIFY">s 秒</p>
<p ALIGN="JUSTIFY">你可以用函数DATEDIFF确定两个日期或时间之间的间隔。下面的例子演示了如何使用这个函数:</p>
<p ALIGN="JUSTIFY">You have been a member for <%=DATEDIFF(</font><font SIZE="3">“</font><font
FACE="宋体" SIZE="3">d</font><font SIZE="3">”</font><font FACE="宋体" SIZE="3">,</font><font
SIZE="3">”</font><font FACE="宋体" SIZE="3">1/1/1988</font><font SIZE="3">”</font><font
FACE="宋体" SIZE="3">,DATE)%> days.</p>
<p ALIGN="JUSTIFY">There are exactly <%=DATEDIFF(</font><font SIZE="3">“</font><font
FACE="宋体" SIZE="3">s</font><font SIZE="3">”</font><font FACE="宋体" SIZE="3">,DATE,</font><font
SIZE="3">”</font><font FACE="宋体" SIZE="3">1/1/2000</font><font SIZE="3">”</font><font
FACE="宋体" SIZE="3">)%> seconds remaining until </p>
<p ALIGN="JUSTIFY">the year 2000.</p>
<p ALIGN="JUSTIFY">第一个例子中的DATEDIFF()函数返回1/1/1988与当前日期之间的天数。第二个例子中的DATEDIFF()返回当前日期到2000年之间的秒数。</p>
<p ALIGN="JUSTIFY">函数DATEDIFF()有三个参数:</p>
<blockquote>
<blockquote>
<p ALIGN="JUSTIFY">第一个参数是一个日期或时间间隔(参见表8.2).</p>
</blockquote>
</blockquote>
<p ALIGN="JUSTIFY">另两个参数是两个日期。为了避免出现负数,第一个日期参数应该比第二个早。(如果该函数返回一个负数,你应该知道第一个日期比第二个日期晚。)</p>
<p ALIGN="JUSTIFY"></font><font FACE="宋体"><b>格式化日期和时间</p>
</b></font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">你可以规定一个日期或时间的显示格式。在缺省情况下,当你通过函数DATE显示一个日期时,它看起来是这样的:</p>
<p ALIGN="JUSTIFY">7/9/97</p>
<p ALIGN="JUSTIFY">但是,你可以用函数FORMATDATETIME()显示一个基于你计算机的区域设置的日期。你可以把一个日期显示为短日期格式或长日期格式。</p>
<p ALIGN="JUSTIFY">注意</p>
<p ALIGN="JUSTIFY">从控制面板中选择区域设置图标,可以为你的计算机进行区域设置。你可以通过区域设置来指定日期和时间的长格式或短格式。</p>
<p ALIGN="JUSTIFY">下面的例子演示了如何控制长日期格式和短日期格式的显示:</p>
<p ALIGN="JUSTIFY">Short Date:<%=FORMATDATETIME(DATE,vbShortDate)%></p>
<p ALIGN="JUSTIFY">Long Date:<%=FORMATDATETIME(DATE,vbLongDate)%></p>
<p ALIGN="JUSTIFY">当根据英国(美国)区域设置显示日期时,日期显示为如下的格式:</p>
<p ALIGN="JUSTIFY">Short Date:7/9/97</p>
<p ALIGN="JUSTIFY">Long Date:Wednesday,July 09,1997</p>
<p ALIGN="JUSTIFY">注意短日期格式的显示与不做任何格式化时完全相同。在缺省情况下,日期以短日期格式显示。</p>
<p ALIGN="JUSTIFY">你也可以用函数FORMATDATETIME()格式化一个时间。同样,你可以指定一个时间显示为长格式或短格式。当用短格式显示时间时,将使用24小时时钟(军事时间)。下面的例子演示了如何用FORMATDATETIME()函数操作时间:</p>
<p ALIGN="JUSTIFY">Short Time:<%=FORMATDATETIME(TIME,vbShortTime)%></p>
<p ALIGN="JUSTIFY">Long Time:<%=FORMATDATETIME(TIME,vbLongTime)%></p>
<p ALIGN="JUSTIFY">当以英国(美国)区域设置显示时间时,时间的格式如下:</p>
<p ALIGN="JUSTIFY">Short Time:03:20</p>
<p ALIGN="JUSTIFY">Long Time:3:20:08 AM</p>
</font>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -