asp仿php的一些函数分享
asp仿php的一些函数分享
发布时间:2016-12-29 来源:查字典编辑
摘要:复制代码代码如下:'过程:输出字符串[代替Response.Write]Subecho(Str)response.Write(Str)End...

复制代码 代码如下:

'过程:输出字符串[代替Response.Write]

Sub echo(Str)

response.Write(Str)

End Sub

'函数:获取表单[代替Request.Form]

Function reqf(Str)

reqf = Request.Form(Str)

End Function

'过程:结束页面并输出字符串

Sub die(Str)

response.Write(Str)

response.End()

End Sub

'函数:将ASP文件运行结果返回为字串

Function ob_get_contents(Path)

Dim tmp, a, b, t, matches, m

Dim Str

Str = file_iread(Path)

tmp = "dim htm : htm = """""&vbCrLf

a = 1

b = InStr(a, Str, "<%") + 2

While b > a + 1

t = Mid(Str, a, b - a -2)

t = Replace(t, vbCrLf, "{::vbcrlf}")

t = Replace(t, vbCr, "{::vbcr}")

t = Replace(t, """", """""")

tmp = tmp & "htm = htm & """ & t & """" & vbCrLf

a = InStr(b, Str, "%>") + 2

tmp = tmp & str_replace("^s*=", Mid(Str, b, a - b -2), "htm = htm & ") & vbCrLf

b = InStr(a, Str, "<%") + 2

Wend

t = Mid(Str, a)

t = Replace(t, vbCrLf, "{::vbcrlf}")

t = Replace(t, vbCr, "{::vbcr}")

t = Replace(t, """", """""")

tmp = tmp & "htm = htm & """ & t & """" & vbCrLf

tmp = Replace(tmp, "response.write", "htm = htm & ", 1, -1, 1)

tmp = Replace(tmp, "echo", "htm = htm & ", 1, -1, 1)

'execute(tmp)

executeglobal(tmp)

htm = Replace(htm, "{::vbcrlf}", vbCrLf)

htm = Replace(htm, "{::vbcr}", vbCr)

ob_get_contents = htm

End Function

'过程:动态包含文件

Sub include(Path)

echo ob_get_contents(Path)

End Sub

'函数:base64加密

Function base64encode(byval Str)

If IsNull(Str) Then Exit Function

Dim base64

Set base64 = New base64_class

Str = base64.encode(Str)

Set base64 = Nothing

base64encode = Str

End Function

'函数:base64解密

Function base64decode(byval Str)

If IsNull(Str) Then Exit Function

Dim base64

Set base64 = New base64_class

Str = base64.decode(Str)

Set base64 = Nothing

base64decode = Str

End Function

'函数:URL加密

Function urlencode(byval Str)

If IsNull(Str) Then Exit Function

Str = server.URLEncode(Str)

urlencode = Str

End Function

'函数:Escape加密

Function escape(byval Str)

If IsNull(Str) Then Exit Function

Dim i, c, a, tmp

tmp = ""

For i = 1 To Len(Str)

c = Mid(Str, i, 1)

a = ascw(c)

If (a>= 48 And a<= 57) Or (a>= 65 And a<= 90) Or (a>= 97 And a<= 122) Then

tmp = tmp & c

ElseIf InStr("@*_+-./", c) > 0 Then

tmp = tmp & c

ElseIf a>0 And a<16 Then

tmp = tmp & "%0" & Hex(a)

ElseIf a>= 16 And a<256 Then

tmp = tmp & "%" & Hex(a)

Else

tmp = tmp & "%u" & Hex(a)

End If

Next

escape = tmp

End Function

'函数:Escape解密

Function unescape(byval Str)

If IsNull(Str) Then Exit Function

Dim i, c, tmp

tmp = ""

For i = 1 To Len(Str)

c = Mid(Str, i, 1)

If Mid(Str, i, 2) = "%u" And i<= Len(Str) -5 Then

If IsNumeric("&H" & Mid(Str, i + 2, 4)) Then

tmp = tmp & chrw(CInt("&H" & Mid(Str, i + 2, 4)))

i = i + 5

Else

tmp = tmp & c

End If

ElseIf c = "%" And i<= Len(Str) -2 Then

If IsNumeric("&H" & Mid(Str, i + 1, 2)) Then

tmp = tmp & chrw(CInt("&H" & Mid(Str, i + 1, 2)))

i = i + 2

Else

tmp = tmp & c

End If

Else

tmp = tmp & c

End If

Next

unescape = tmp

End Function

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新ASP教程学习
热门ASP教程学习
编程开发子分类