服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|JavaScript|易语言|

服务器之家 - 编程语言 - ASP教程 - asp #include file 与 #include virtual 的区别小结

asp #include file 与 #include virtual 的区别小结

2019-09-10 11:08asp教程网 ASP教程

简单来说,#include file后面跟的是文件的“相对路径”, #include virtual后面跟的是文件的“绝对路径”。

这里说的“相对路径”是相对于“主调文件”所在的文件夹。 

#include file 
#include file后面跟的是文件的“相对路径”,不可以用“绝对路径”。 
使用相对路径,如:file="script\file.inc",file="..\script\file.inc" 
不可以用绝对路径,如:file="\script\file.inc" 
#include virtual 
#include virtual后面可以跟文件的“绝对路径”,也可以跟形式上的“相对路径”(所谓形式上的“相对路径”,指的是这个路径从形式上看是“相对路径”,但它还是会被转换成“绝对路径”,因此本质上还是“绝对路径”) 

使用绝对路径,如:virtual="\folder\file.inc" 
使用形式上的“相对路径”,如:virtual="folder\file.inc",会被转换成virtual="\folder\file.inc" 

建议使用“绝对路径”形式,如:virtual="\folder\file.inc",而不要写成virtual="folder\file.inc",虽然这么写也可以 
结合几个例子,说下区别: 

复制代码代码如下:


假设“包含文件”和“被包含文件”同在根目录下名为folder的文件夹内,则virtual="folder\file.asp"是可以的,而file="folder\file.asp"是错误的。 
如果一个站点下有2个文件夹folder1和folder2,folder1下有文件file1.asp,folder2下有文件file2.asp,如果file1.asp要调用file2.asp,那么在file1.asp中可以这样写: 
<!--#include virtual="\folder2\file2.asp"-->, 
在这种情况下用<!--#include file="folder2\file2.asp"-->是错误的。


使用过程中,要注意下面几点: 

不论用#include file还是#include virtual,在路径中用单纯用“/”或单纯用“\”或者二者混和使用都可以。 

如:file="..\script\file.inc", file="../script/file.inc",file="../script\file.inc" 

#include file和#include virtual只能包含站内文件,不能包含站外文件。 例如,假设有一个站点名为website,使用virtual="website\file.asp"是错误的。 

include file 可以用相对路径或全路径与文件名的组合来描述 

如:file="..\script\my.inc" file="../script/my.inc" 
奇怪的是竟然可以 file="../script\my.inc"也通过编译 

他的禁止:是不可以用绝对路径来表示 

如:file="/script/my.inc" 

而对virtual可以使用虚抑的绝对路径来表示 

virtual="/yousite/script/my.inc" 

raintung 
2001.5.4 
但是对asp3.0的编程中 
关于virtual可以使用虚抑的相对路径来表示,我从未验证成功,还望有 
人来指点 
如 <!-- #include virtual="../script/my.inc" --> 

结果证明: 
(1)斜线或反斜线是无关紧要的 
(2)file除了全路径不可以表示,而virtual则刚好相反

延伸 · 阅读

精彩推荐