蝙蝠岛资源网 Design By www.hbtsch.com

在ASP中include文件形如 #include file=function.asp,这是最简单也是最常用的包含文件方法,青岛星网下面跟大家分享:根据不同的需求,包含不同的文件的函数。

ASP动态包含文件的实现函数

Function include(filename)
Dim re,content,fso,f,aspStart,aspEnd
set fso=CreateObject("Scripting.FileSystemObject")
set f=fso.OpenTextFile(server.mappath(filename))
content=f.ReadAll
f.close
set f=nothing
set fso=nothing
set re=new RegExp
re.pattern="^\s*="
aspEnd=1
aspStart=inStr(aspEnd,content,"<%")+2
do while aspStart>aspEnd+1
 Response.write Mid(content,aspEnd,aspStart-aspEnd-2)
 aspEnd=inStr(aspStart,content,"%\>")+2
 Execute(re.replace(Mid(content,aspStart,aspEnd-aspStart-2),"Response.Write "))
 aspStart=inStr(aspEnd,content,"<%")+2
loop
Response.write Mid(content,aspEnd)
set re=nothing
End Function

其实是写一个动态包含的函数,这样每次调用时候代码简洁,也方便,使用方法:

include("***.asp")'注意,这里的include是函数名哦,不要搞混哦。

下面是其他网友的补充大家参考一下

ASP中,include file/virtual 是优先脚本代码处理的,所以无法使用include动态包含ASP文件。我们可以使用Execute函数动态执行所需代码。

方法:

Execute(ASP代码)

例子:(vbCrLf为换行符)

Execute("Class clsAbc"&vbCrLf&"Public Function output"&vbCrLf&"Response.Write 123"&vbCrLf&"End Function"&vbCrLf&"End Class") 

Dim objAbc 
Set objAbc = New clsAbc 
objAbc.output 
Set objAbc = Nothing 

使用时可以用从文件或数据库读取出ASP代码再执行,注意,所执行的代码中不应包含<%和%>
注意不要与Server.Execute混淆,Server.Execute参数为ASP虚拟路径,并且使用该函数不但不能动态声明Class类,甚至不可以给主程序段的变量赋值。

例子:

main.asp

Dim strAbc,objAbc 
strAbc = "Test" 
Server.Execute("sub.asp") 
Response.Write strAbc 
Set objAbc = New clsAbc 
objAbc.output 
Set objAbc = Nothing 

sub.asp

strAbc = "Execute" 
Class clsAbc 
 Public Function output 
 Response.Write "Class" 
 End Function 
End Class 

执行main.asp后,将仅输出Test,而objAbc则不能实例化。

标签:
ASP,execute,asp动态包含文件

蝙蝠岛资源网 Design By www.hbtsch.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
蝙蝠岛资源网 Design By www.hbtsch.com

评论“ASP中利用execute实现动态包含文件的方法”

暂无ASP中利用execute实现动态包含文件的方法的评论...

稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!

昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。

这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。

而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?