PHP模板用xml的思路
http://tech.ddvip.com 2007年08月25日 社区交流
内容摘要:我仔细考察了php的模板核心技术,无外乎查找字符串开始,然后定义替换变量,替换成数据,然后并成输出页输出,牵扯到的缓存我就不再说了.
<div id="topdata">{%TOP_MESS%}<%=show_top_meun()%></div>
如果这个节点被加载,生成的文件里面会将topdata节点替换成如上的html文档模板,这就是模块
这里的模块也可以是xml文档,重复加载模块,也可以是终数据.
当这些还有模块节点的xml模板被加载以后,就被程序识别,对应的加载成html二级模块,然后提出我们的"仿xml 数据"标记中的数据,正则替换对应的节点,生成文件,这里的"仿xml数据"是这种方式的数据:
{%TITLE%}<%=cjjer_hometitle%>{%/TITLE%}
{%STYLE%}default{%/STYLE%}
{%site_top%}<%=get_cache(0)%>{%/site_top%}
{%format_two%}<div id="footer_ul"><%Call light()%></div>
{%/format_two%}
{%site_footer%}<%Call cc_footer()%>{%/site_footer%}这里,您可能马上理解了我说的"仿xml数据"了,这种加载数据的方式也是xml分析节点,然后直接正则替换,当然可以include文件的(asp,php).
好了,现在您想必概念已经很清楚了,(不清楚的话重新看上面的话,或看如下的例子)
我就举个举个简单的例子说明一下(format_index.xml):
<format>
<site_top>{%site_top%}</site_top>
<format_two>
<home_bigflash>{%home_bigflash%}</home_bigflash>
{%format_two%}
</format_two>
<site_footer>{%site_footer%}</site_footer>
</format>模块:
//format,就是最上面的那个,不列举了
//home_bigflash
<div id="main_img">
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/
swflash.cab#version=6,0,29,0" width="100%">
<param name="movie" value="images/main.swf">
<param name="wmode" value="transparent">
<param name="quality" value="high">
<embed src="images/main.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="100%"></embed>
</object>
</div>
//format_two
<div id="format_two">(&format_two&)<script language="javascript" type="text/javascript" src="js/same_h2.js"></script> </div>
//site_footer
<div id="site_footer">(&site_footer&)</div>差不多应该加载的模板和模块就这点吧(都是可以重用的.)
来源:蓝色理想 作者:5do8 责编:豆豆技术应用
正在加载评论...
- php 正则表达式
- php 入门教程
- php 安装配置
- php 函数专题
- php 函数大全(EN)
- php 5.0 中文手册
- php 4.0 中文手册
- php 程序编码规范标准
- php 常见错误
- php 中文乱码
- php Apache 安装配置
- linux php 安装配置
- windows php 安装配置
- php 十天入门教程
- php 学习笔记
- php smarty 教程
- php 分页专题
- php 类
- php 变量
- php 常量
- php 数组
- php 脚本
- php 入门实例
- php 字符串
- php.ini 配置
- php xml 专题
- php session 教程
- php 对象模型
- 更多php专题……