asp仿php的一些函数分享

2018-09-06 10:43

阅读:683

  复制代码 代码如下:
过程:输出字符串[代替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


评论


亲,登录后才可以留言!