-
-
林静听蝉
2015-09-24
- 这个山寨版的Smarty模板引擎只支持最简单的变量替换输出。这个模板引擎还有哪些可以改进的地方?
1.每一次运行这段代码的时候都会去编译一次模板,那么如果说模板的源文件没有修改,是不需要每次都去编译的,直接使用上一次的编译就行了。
2.可以去检测一下,模板的编译目录下,是否已经有了编译好的文件,如果已经存在,那么也不需要编译了。
可以把获取模板源文件getSourceTemplate()和编译模板源文件compileTemplate()这2个方法放在display()这个方法中去调用,然后在display()这个方法中添加一些判断语句:检测编译目录下是否已经存在编译的目标文件,不存在则编译它;存在则判断一下,模板的源文件最后的修改时间是不是比编译后的文件更迟,如果是说明源文件已经被改动过了,需重新编译这个模板;反之,则说明编译后没有再修改过模板源文件,那么就直接加载已经编译好的模板源文件。这样就把系统的效率提高了一个等级。
-
截图
0赞 · 2采集