据我所知,经典的 ASP 或 VBScript 没有与 PHPgetPathName()
和函数等效的功能。getName()
我无法理解getPathName()
给定字符串时的含义,实际上我认为它不存在,所以只需:
cPath = Server.MapPath(Request.ServerVariables("PATH_INFO"))
该变量将包含当前正在执行的 ASP 文件的完整物理路径。
至于getName()
你可以编写自定义函数:
Function GetOnlyName(filePath)
Dim slashIndex
slashIndex = InStrRev(filePath, "\")
If slashIndex<1 Then
slashIndex = InStrRev(filePath, "/")
End If
If slashIndex>0 Then
ExtractFileName = Mid(filePath, slashIndex + 1, Len(filePath) - slashIndex + 1)
Else
ExtractFileName = filePath
End If
End Function
然后像这样使用它:
cName = GetOnlyName(Server.MapPath(Request.ServerVariables("PATH_INFO")))
并且该变量将只包含 ASP 文件的名称。
作为记录,为了避免混淆类型不匹配错误,请始终将其放在脚本之上:
Option Explicit
然后总是使用Dim
语句声明所有变量,就像上面的函数一样。有了这个,尝试使用getPathName
会给出更有意义的“变量未定义”错误。