uchome模板全解析(二)
副标题[/!--empirenews.page--]
本篇主要以几个例子来详细说明下uchome的模板文件结构及语法说明。 必须先来了解一下uchome的模板文件解析过程,我们以“随便看看”里的“博客”为例: 它的url地址是http://home.xxx.com/network.php?ac=blog, 那么我们先打开/network.php看一下,我们看到第25行有一段 //允许的方法$acs = array(’space’,‘doing’,‘blog’,‘album’,‘mtag’,‘thread’,’share’);$ac = (empty($_GET['ac']) || !in_array($_GET['ac'],$acs))?’index’:$_GET['ac']; 这里是保证不会出现其他不存在的模块。看到里面有个’blog’了吧。 然后又看到第37行里面有一段 //数据处理include_once(S_ROOT.”./source/network_{$ac}.php”); 这个实际上引用了/source/network_blog.php文件,而network_blog.php里面进行相关的博客数据准备及其他操作,为下一步的解析模板做准备 最后第49行有 //模板调用 include_once template(”network_$ac”); 即用template函数解析对应的静态htm模板页面再进行调用,template函数就不详细说了,主要是定位到模板文件夹下的指定模板页面(例如这里就是/template/default/network_blog.htm),然后用正则表达式替换模板文件中的变量和模板语法语句,填充上一步得到的博客数据,然后输出到屏幕 之所以使用模板页面,而不直接在php里面写htm代码输出,是为了使程序代码和模板页面分离,便于设计师和程序员的工作互不影响。 好了废话了很多,先看一下uchome的基本模板语法 就以/template/default/network_blog.htm为例,它的内容是(绿色的和褐色底色的就是嵌入到模板页面里面的语法代码了) style=”display:none;”> |