- 论坛徽章:
- 0
|
原帖由 ultralqxq 于 2006-3-23 09:47 发表
其实借你的思想,任何模伴类都可以做到资源模板。。。比如fasttemplate,我就完全可以用{source}这样的文件夹来存放资源。。。并且我也试过了,确实可行。。。
你的模板我仔细看过N遍了。。可惜我技术差,看不透内在。。。所以有几个问题想请教你一下怎么解决:
1。从start()函数来看,当想用index.html为模板时,就必定会生成index.php文件。。。。
那么假如我有好几个PHP文件想调用index.html做模板时怎么办?比如文章列表,我以list.html做为模板,不管哪个PHP想生成列表,都是以list.html为模板的,这时要传什么参数给start()呢?
2。当网页中有iframe时,而iframe页面中又有图片还有链接到其他网页的超链接,这时问题就复杂化了。。你觉得,这个iframe应该怎么处理?我是又新建了一个{iframe}来存放iframe页面来解决的。但是,随着问题的复杂化,“文件夹变量”会越来越多,而且全部都是全局变量,你不觉得这样很有安全隐患吗?
3。还有,在HTTP协议下,存在着URL编码问题,就是象中文那样,放到地址栏上会变成类似%xx这样的形式。。。那么象$这样的特殊字符,放到地址栏上会不会“变样”呢?我在本地服务器上测试过,没有变,但不敢肯定在linux服务器下也不会变~~楼主试过没有?
1.传递list给start,一个模板可以多次使用-----不会重复生成list.php编译文件(因为只要存在list.php并且list.html没被修改,就忽略编译).
你的这个担心是不必要的
2.assetTemplate全部用php变量,不需要自己定义{iframe}这样的标签.并且并非"全部都是全局变量",而是局限在一个具体的assetTemplate类中.例如$ass1=new assetTemplate,$ass2...,那么1与2之间的变量若不显式赋值,则是不可共享的.因为include是在函数内部执行的,这就避免了当前页面的全局变量.
3.linux,unix,windows都测试通过,不过mac和dos没有进行测试
[ 本帖最后由 axgle 于 2006-3-23 10:39 编辑 ] |
|