【转】include 与 server.execute

来源:互联网 发布:电子商务美工岗位职责 编辑:程序博客网 时间:2024/05/17 23:18

server 是 ASP 中的一个内置对象, 有一个方法为 Execute。

用法是:server.Execute(path)

它和 include 包含文件的功能很相似,不同之处是“包含文件”与“被包含文件”之间在变量和函数上是相互隔绝的。

比如两个页面文件:
a.asp
<%
dim c
c = "1"
response.Write(c)
server.Execute("b.asp")
response.Write(c)
%>

b.asp
<%
dim c
c = "2"
response.Write(c)
%>

显示结果为:121

两个页面都定义了变量 c,但不会报错说名称重定义,因为两个文件之间在变量和函数上是相互隔绝的,但如果在 a.asp 中是使用 include 包含 b.asp,便会报错说名称重定义。

注意:b.asp 同样可以“享用”客户端通过 POST 或 GET 提交给 a.asp 的值。

server.Execute 也可以形成递归,但递归达到一定的次数后不会像 server.Transfer 一样自动终止,而是报错并终止。

Server.Execute和#include相异之处:
Execute Method 是个呼叫一个.asp 程序并执行它,比较类似一般程式语言的 procedure call;而 #include 则仅将所包含的程序插入原程序当中。