zoukankan      html  css  js  c++  java
  • ASP入门(十七)-ASP #include

    通过使用 #include 指令,您可以在服务器执行 ASP 文件之前,把另一个 ASP 文件的内容插入到这个 ASP 文件中。

    如何使用 #include 指令

    这里有一个名为 mypage.asp 文件:

    <%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
    <!doctype html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>如何使用 #include 指令</title>
    </head>
    <body>
    <h3>至理名言</h3>
    <!-- 这里引用了 wisdom.inc 文件 -->
    <p><!--#include file="wisdom.inc"--></p>
    <h3>现在时间是:</h3>
    <!-- 这里应用了 time.asp 文件显示当前时间-->
    <p><!--#include file="time.asp"--></p>
    </body>
    </html>

    这是 wisdom.inc 文件内容:

    “优秀的代码是它自己最好的文档。当你考虑要添加一个注释时,问问自己,“如何能改进这段代码,以让它不需要注释?” —— Steve McConnell 《代码大全》
    这是 time.asp 文件内容:
    <%
    Response.Write(Time)
    %>

    在 Firefox 浏览器中运行 mypage.asp 文件后,显示效果如下:

    20150818003

    通过【查看页面源代码】,它将如下所示:

    20150818004


    引入文件的语法

    如需在 ASP 页面中引用文件,请把 #include 指令放在注释标签 <!-- --> 中:

    <!--#include virtual="somefilename" -->
    
    or
    
    <!--#include file="somefilename" -->

    #include virtual 后面跟的文件是以虚拟目录开始的“绝对路径“。

    #include file 后面跟的是文件的相对路径,不可以使用绝对路径,例如:

    我们通过例子来学习区别,需要调用的文件(time.asp 和 wisdom.inc)存放在 inc 目录中,主页面(mypage.asp)存放在 test 目录中,树结构下图所示:

    20150818005

    我们的 mypage.asp 分别用两种方式进行引用,主要代码如下:

    ......
    <body>
    <h1>#include file 相对地址方式的引用演示</h1>
    <h3>至理名言</h3>
    <p><!--#include file="../inc/wisdom.inc"--></p>
    <h3>现在时间是:</h3>
    <p><!--#include file="../inc/time.asp"--></p>
    <hr>
    <h1>#include virtual 绝对地址方式的引用演示</h1>
    <h3>至理名言</h3>
    <p><!--#include virtual="/inc/wisdom.inc"--></p>
    <h3>现在时间是:</h3>
    <p><!--#include virtual="/inc/time.asp"--></p>
    </body>
    ......

    调用后显示效果如下:

    20150818006


    特别提示

    通过上面的部分,我们已经使用了 INC 作为被引用文件的文件扩展名。如果用户尝试直接浏览 INC 文件,这个文件中的内容会被显示出来。最好还是使用 ASP 作为扩展名。

    在脚本执行前,被引用的文件就会被处理和插入。下面的脚本无法运行,就是因为 ASP 会在为变量赋值前执行 #include 指令,如下:

    <%
    fname = "/inc/wisdom.inc"
    %>
    <!--#include virtual="<%fname%>" -->

    运行后会报错,提示找不到包含的文件 <%fname%>。

    你不能在脚本分隔符<%%>之间包含文件引用,也是无法执行的,如下:

    <%
    For i = 1 To 10
    <!--#include virtual="/inc/wisdom.inc"-->
    Next
    %>

    但是下面的这段代码是可以执行的,引用 10 遍,如下:

    <%For i = 1 To 10%>
    <!--#include virtual="/inc/wisdom.inc"-->
    <%Next%>

    被引用的文件可以引用其他文件,同一个 ASP 文件可以对同一个文件多次引用。


    示例代码下载

    IncludeTest.RAR

  • 相关阅读:
    DLL注入实践
    程序编译保护机制
    加密配置文件总结
    PCL点云配准(3)
    PCL点云分割(3)
    ubuntu Ros环境halcon的一个程序
    opencv2/nonfree/nonfree.hpp:没有那个文件或目录
    深度图像计算三维点云
    利用深度学习的点云语义分割(一)
    3D 特征点概述(2)
  • 原文地址:https://www.cnblogs.com/pchmonster/p/4739561.html
Copyright © 2011-2022 走看看