ASP 包括文件
#include 指令
通过使用 #include 指令,我们可以在服务器执行 ASP 文件之前,把另一个ASP文件插入这个文件中。
#include 命令用于在多个页面上创建需要重复使用的函数、页眉、页脚或者其他元素等。
如何使用 #include 指令
这里有一个名为 "mypage.html" 的文件:
<!DOCTYPE html>
<html>
<body>
<h3>Words of Wisdom:</h3>
<p><!--#include file="wisdom.inc"--></p>
<h3>The time is:</h3>
<p><!--#include file="time.inc"--></p>
</body>
</html>
这是 "wisdom.inc" 文件:
"One should never increase, beyond what is necessary,
the number of entities required to explain anything."
这是 "time.inc" 文件:
<%
Response.Write(Time)
%>
在浏览器中查看的源代码应该类似这样:
<!DOCTYPE html>
<html>
<body>
<h3>Words of Wisdom:</h3>
<p>"One should never increase, beyond what is necessary,
the number of entities required to explain anything."</p>
<h3>The time is:</h3>
<p>11:33:42 AM</p>
</body>
</html>
Including 文件的语法:
如需在 ASP 中引用文件,请把 #include 命令置于注释标签之中:
<!--#include virtual="somefilename"-->
或者:
<!--#include file ="somefilename"-->
关键词 Virtual
关键词 virtual 指示路径以虚拟目录开始
如果 "header.inc" 文件位于虚拟目录 /html 中,下面这行代码会插入文件 "header.inc" 中的内容:
<!-- #include virtual ="/html/header.inc" -->
关键词 File
关键词 File 指示一个相对的路径。相对路径起始于含有引用文件的目录。
假设文件位于 html 文件夹的子文件夹 headers 中,下面这段代码可引用 "header.inc" 文件的内容:
<!-- #include file ="headers\header.inc" -->
注意:被引用文件的路径是相对于引用文件的。假如包含 #include 声明的文件不在 html 目录中,这个声明就不会起效。
您也可以使用关键词 file 和语法 (..\) 来引用上级目录中的文件。
提示和注释
在上面的一节中,我们使用 ".inc" 来作为被引用文件的后缀。注意:假如用户尝试直接浏览 INC 文件,这个文件中内容就会暴露。假如被引用的文件中的内容涉及机密,那么最好还是使用 "asp" 作为后缀。ASP 文件中的源代码被编译后是不可见的。被引用的文件也可引用其他文件,同时一个 ASP 文件可以对同一个文件引用多次。
重要事项: 在脚本执行前,被引用的文件就会被处理和插入。
下面的代码无法执行,这是由于 ASP 会在为变量赋值之前执行 #include 命令:
<%
fname="header.inc"
%>
<!--#include file="<%fname%>"-->
不能在脚本分隔符之间包含文件引用:
<%
For i = 1 To n
<!--#include file="count.inc"-->
Next
%>
但是这段脚本可以工作:
<% For i = 1 to n %>
<!--#include file="count.inc" -->
<% Next %>