程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> ASP技巧 >> asp常用的一些內置函數

asp常用的一些內置函數

編輯:ASP技巧

以下是一些ASP常用的內置函數,記住這些函數會給自己的開發過程中省下許多時間。

數值型函數

abs(num): 返回絕對值 
sgn(num): num>0 1; num=0 0; numhex(num): 返回十六進制值 直接表示:&Hxx 最大8位 
oct(num): 返回八進制值 直接表示:&Oxx 最大8位 
sqr(num): 返回平方根 num>0 
int(num): 取整 int(99.8)=99; int(-99.2)=100 
fix(num): 取整 fix(99.8)=99; fix(-99.2)=99 
round(num,n): 四捨五入取小數位 round(3.14159,3)=3.142 中點數值四捨五入為近偶取整 round(3.25,1)=3.2 
log(num): 取以e為底的對數 num>0 
exp(n): 取e的n次冪 通常用 num^n 
sin(num): 三角函數,以弧度為值計算 (角度*Pai)/180=弧度 con(num); tan(num); atn(num)

字符串函數

len(str):計算字符串長度 中文字符長度也計為一! 
mid(str,起始字符,[讀取長度]):截取字符串中間子字符串 
left(str,nlen):從左邊起截取nlen長度子字符串 
right(str,nlen):從右邊起截取nlen長度子字符串 
Lcase(str):字符串轉成小寫 
Ucase(str):字符串轉成大寫 
trim(str):去除字符串兩端空格 
Ltrim(str):去除字符串左側空格 
Rtrim(str):去除字符串右側空格 
replace(str,查找字符串,替代字符串,[起始字符,替代次數,比較方法]):替換字符串 
注:默認值:起始字符 1;替代次數 不限;比較方法 區分大小寫(0) 
InStr([起始字符,]str,查找字符串[,比較方法]):檢測是否包含子字符串 可選參數需同時選 返回起始位置 
InStrRev(str,查找字符串[,起始字符][,比較方法]):反向檢測是否包含子字符串 返回起始位置 
space(n):構造n個空格的字符串 
string(n,str):構造由n個str第一個字符組成的字符串 
StrReverse(str):反轉字符串 
split(str,分割字符串[,次數][,比較方法]):以分割字符串為分割標志將字符串轉為字符數組 可選參數需同時選

數據類型轉換函數 
Cint(str):轉換正數 True -1;False 0;日期 距離1899/12/31天數;時間 上午段 0;下午段 1; 
Cstr(str):日期 輸出格式 yyyy/mm/dd;時間 輸出格式 Am/Pm hh:mm:ss 
Clng(str):與Cin()類似 
Cbool(num):num不為零 True;反之 False 
Cdate(str):轉換日期格式 0:#Am 12:00:00#;正數 距離1899/12/31天數的日期;浮點數 日期+小數時間 
Cbyte(num):numCsng(str):轉換為單精度數值 
Cdbl(str):轉換為雙精度數值 
Ccur(str):轉換為現金格式

時間函數 
date:取系統當前日期 
time:取系統當前時間 
now:取系統當前時間及日期值 Datetime類型 
timer:取當前時間距離零點秒值,計時器,可計算時間差 
DateAdd(間隔單位,間隔值,日期):推算相鄰日期 
DateDiff(間隔單位,日期一,日期二):計算時間差 日期二-日期一 
Datepart(間隔單位,日期):計算日期的間隔單位值 
Dateserial(date):輸出日期值(按序列計算) 
Timeserial(time):輸出時間值(按序列計算) 
DateValue(datetime):取出字符串中日期值 
Timevalue(datetime):取出字符串中時間值 
weekday(date):計算星期幾 
MonthName(date):輸出月分名 
year(datetime):截取年份 
month(datetime):截取月份 
day(datetime):截取日 
hour(datetime):截取小時 
minute(datetime):截取分鐘 
second(datetime):截取秒

其它函數 
Array(unit,..):動態生成數組 
Asc(str):輸出字符串第一個字符的ASCII碼 
Chr(asc):轉換ASCII為字符 Enter:Chr(13)&Chr(10) 
Filter(數組名稱,關鍵字符串,[,包含][,比較方法]): 
將字符串數組中含有關鍵字符串的元素存成新的數組(默認) [包含]為false則取不包含的元素 
Join(ArrayName):將數組中元素連成字符串 
Ubound(ArrayName[,維數]):取得數組相應維數的上界 
Lbound(ArrayName[,維數]):取得數組相應維數的下界 一般為0 
Randmize n:啟動隨機數種子 
Rnd(n):取得隨機數,n>0或為空,取序列下一隨機值,n取介於A和B之間的隨機正數C,公式:C=Int((B-A+1)*Rnd+A) 條件(B>A)

子程序和自定義函數

Sub StrSubName Function StrFunName(arg[1],..) 
子程序體 函數體 
Exit Sub 中途跳出 Exit Function 中途跳出 
End Sub StrFunName=Value 返回值 
End Function 
[call] StrSubName 引用子程序 Var=StrFunName(arg[1],..) 引用函數

子程序和自定義函數可以遞歸調用;

ASP六大對象常用語句示范

Response

Response.write StrVar/”String”:向網頁寫出參數值或字符串 等同於在Html標記中嵌入 
Response.End:停止頁面編譯,並將已經編譯內容輸出到浏覽器 
Response.Buffer=True|False:頁面編譯時是否使用緩存的設置,一般在頁面頭部設置 
Response.Flush:強制輸出頁面已編譯部分內容 
Response.Clear:將緩沖區內的數據清除 
Response.Redirect URL:停止頁面編譯或輸出,轉載指定所需頁面 
Response.IsClIEntConnected:返回True|False,檢測用戶是否還處於連接狀態 
Response.Charset(CharsetName):設置頁面編碼類型,即 
Response.ContentType [= ContentType ]:設置頁面文件類型,同上 
Response.Expires [= number]:設置頁面失效時間,單位分鐘 
Response.ExpiresAbsolute [= [date] [time]]:設置頁面失效的絕對時間 
Response.Status = StatusDescription:設置頁面狀態描述

Request

Request(”PassStrName”):讀取網頁傳遞值,包括表單及以?PassStrName=value&PassStrName_n=value_n形式 
Request[.collection|property|method](variable) 
Request.querystring(”PassStrName”):讀取Get方法傳遞的表單值和?PassStrName=value 
Request.QueryString(Varible)[(Index).Count] 
Request.form(”PassStrName”):讀取Post方法傳遞的純表單域的值 
Request.Form(Parameter)[(Index).Count] 
Request.ServerVaribles(Server Environment Variable):讀取客戶端系統環境變量,詳見參考 
Request.BinaryRead(Count):讀取指定字節數的傳送值 
Request.TotalBytes:查詢體的長度,以字節為單位,只讀

注:同名表單如:CheckBox如有多項值,傳遞形式如右,StrName=value1,value2,…需要用Split函數分割各項值 
Multiple的Select表單與CheckBox類似,TextArea的值可包含換行字符,用Replace轉為
,以滿足格式需要

Session:(用戶全局變量)

Session(”SesName”)=value:存儲Session變量值,也可讀取該值 
Session(”SesName”)=Empty:判斷Session值是否存在的兩種方法 
IsEmpty(Session(”SesName”))=True|False:判斷Session值是否存在的兩種方法 
Session.TimeOut=num:設置Session變量的存在時效,單位分鐘 
Session.Abandon:清除所有Session變量值 
Session.SessionID:Session變量的ID序列號,只讀

Application:(應用程序全局變量)

Application(”AppName”)=value:存儲Application變量值,也可讀取該值 
Application(”AppName”)=Empty:判斷Application值是否存在的兩種方法 
IsEmpty(Application(”AppName”))=True|False:判斷Application值是否存在的兩種方法 
Application.Lock:Application變量值鎖定,防止同時更改變量值 
Application.UnLock:Application變量值解鎖,允許更改變量值

注:Session與Application變量都可以用來存儲數組和系統對象,引用方法是變量名相當於數組名而已, 
但不能直接改變其值,需要借助臨時數組修改值後,再賦給Session與Application變量

Global.asa文件的結構: 
Sub Application_OnEnd … End Sub 
Sub Session_OnStart …End Sub 
Sub Session_OnEnd … End Sub
%>

Server:

Server.MapPath(”FileUrl”):映射文件名的服務器站點絕對地址,Path=Server.MapPath(./)可以得到虛擬目錄根路徑 
Server.HtmlEncode(”string”):轉換為可以直接顯示帶Html格式的字符串,如:等 
Server.URLEncode( “string”):轉換為浏覽器地址編碼 
set Var=Server.CreatObject(”ObjName”):創建對象變量 
Server.ScriptTimeout = NumSeconds:ASP程序頁面執行時限,以秒為單位

CookIEs: 存儲在用戶本機的臨時變量,每個Cookie的最大字節4KB,最多可以有300個CookIE 1.2MB

Response.cookies(”StrCookIEName”)=value:存儲CookIE變量值,也可讀取該值 
Response.cookies(”StrCookIEName”)=”":判斷是否為空 
Response.cookies(”StrCookIEName”).Expires=Date:變量有效期,以天為單位,小於當前時間立即失效 
Response.Cookies(CookIE[(key).Attribute]):標准語法

ObjectContext 控制ASP的事務處理

ObjectContext.OnTransactionAbort:由放棄的事務處理事件激發,在腳本完成處理後發生 
ObjectContext.OnTransactionCommit:由成功的事務處理事件激發,在腳本完成處理後發生 
ObjectContext.SetAbort:顯式的放棄一次事務處理 
ObjectContext.SetComplete:覆蓋前面任何調用ObjectContext.SetAbort方法的調用 
Msgbox “string”/StrName:VBscript提示框

表單的Onsubmit事件:在同一頁面寫入 Function FormName_onsubmit()..FormName_onsubmit=True/False..end Function, 
頁面會在提交前先執行語句,並根據返回值判斷是否完成提交任務。

數據庫連接字符串舉例:

Access2000: 
conn.Open “Provider=Microsoft.Jet.OLEDB.4.0;Data Source=” & Server.MapPath(”DBase\liuyan.mdb”) 
conn.Open “Provider=Microsoft.Jet.OLEDB.4.0;Data Source=” & Server.MapPath(”DBase\liuyan.mdb”)&”;PassWord=admin” 
Recordset.Open “數據表名”, conn, 2, 2

SqlServer2000: 
conn.Open “Provider=SQLOLEDB.1;User ID=sa;PassWord=admin;Initial Catalog=pubs;Data Source=server\garlmrm” 
conn.Open “provider=SQLOLEDB;data source=hyserver;uid=sa;pwd=;database=pubs” 
Recordset.Open StrSQL, conn, 2, 2

DBase:
conn Open “Driver={Microsoft DBase Driver};SourceType=DB;SourceDB=” & Server.MapPath( “目錄名” ) 
Recordset.Open StrSQL, conn, 2, 2

FoxBase: 
conn Open “Driver={Microsoft Visual FoxPro Driver};SourceType=DBF;SourceDB=” & Server.MapPath( “目錄名” ) 
Recordset.Open DBF文件名或Select語句, conn, 2, 2 
conn Open “Driver={Microsoft Visual FoxPro Driver};SourceType=DBC;SourceDB=” & Server.MapPath( “DBC數據庫文件名” ) 
Recordset.Open DBF文件名或Select語句, conn, 2, 2

Excel: 
conn Open “Driver={Microsoft Excel Driver (*.xls)};DBQ=” & Server.MapPath( “XLS文件名” ) 
Recordset.Open “Select * From [”&sheet&”$]”,conn,2,2

注:使用DBF、DBC、Excel數據庫,下面幾點要注意:Excel數據庫只能讀取、增加記錄、修改記錄,但不能刪除記錄; 
DBF、DBC可以讀取記錄、增加記錄、刪除記錄、修改記錄,但是在增加記錄時,任何一個字段值都不能為空,由此 
可看出局限性很大,所以盡可能地用MDB或SQL數據庫。

感謝loveASP投稿    
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved