Tue, Jul 14, 2008  Posted by Administrator  Tags: 动态  Web开发    Category: 日志  Views (...)  Comments (...) 

EasyIDE Framework完美实现了ASP的动态包含文件

可能很多ASP老鸟都已经注意到了,在PHP中,利用include语句进行文件包含,路径中可以有变量,这样就可以在程序运行的时候根据需要来动态地加载其他文件(比如模板文件)。在ASP中,行不通!ASP使用来包含文件的时候,文件路径path中是不能有变量的,因为服务器是先将包含的文件引入到当前页面然后才开始对页面程序进行解释执行的。相信这也是很多老鸟们觉得ASP弱的原因之一。

关于这个问题,百度一下“ASP 动态包含”,可以找到很多结果,不过这些结果大都是同一篇文章(或者是对原文进行修改过的)。这篇文章中有一个本来是用来实现动态包含的函数,还有一个大侠试图通过修改让它支持包含文件还有包含文件的问题。可是在测试中我发现,这个函数有一个致使的Bug,就是它是分块执行的,如果被包含文件中有像这样分开的语句如:
      <%if ....then%>
            这里是一些HTML代码      
      <%end if%>
      或者:
      <%while .....%>
            这里是一些HTML代码
      <%wend%>
只要一个完整的语句被分开在两个以上的<%%>中,这个函数就会报错,显然,这样肯定是行不通的。但是同样非常感谢这个函数的作者,因为我在第二研究他的这个函数的时候,受到了很大的启发,并写出了自己动态包含函数。

所以,下次放出新版EasyIDE Framework的时候,大家可以看到这个新函数--include,这个函数用简练、简练到只有一行代码(因为这行代码在调用EasyIDE Framework中的另一个函数~~)实现了让ASP也可以动态地包含文件,而且完美地支持所包含的文件中再次包含文件(理论上支持无限级的包含深度)。目前正在debug中,下一版本的EasyIDE Framework中大家将可以看到这个函数的源代码。(新版程序现已发布)

  1. 正在很努力地加载评论。。。重新加载

发表评论